From 7d6421a54899e2a8abcaf80be95117c103df531b Mon Sep 17 00:00:00 2001 From: Markus Isberg <3e849f2e5c@pm.me> Date: Fri, 14 Jan 2022 01:28:24 +0900 Subject: [PATCH] Unstable 0.16.0.0 --- .../ClientSource/Characters/Character.cs | 4 +- .../ClientSource/Characters/CharacterInfo.cs | 1 + .../Characters/Health/AfflictionHusk.cs | 8 + .../Characters/Health/CharacterHealth.cs | 27 +- .../ClientSource/DebugConsole.cs | 7 +- .../Events/Missions/ScanMission.cs | 11 +- .../ClientSource/Fonts/ScalableFont.cs | 190 +-- .../BarotraumaClient/ClientSource/GUI/GUI.cs | 153 ++- .../ClientSource/GUI/GUIButton.cs | 6 - .../ClientSource/GUI/GUIComponent.cs | 24 +- .../ClientSource/GUI/GUIListBox.cs | 8 +- .../ClientSource/GUI/GUIMessageBox.cs | 35 +- .../ClientSource/GUI/GUIScissorComponent.cs | 6 + .../ClientSource/GUI/GUITextBlock.cs | 12 +- .../ClientSource/GUI/GUITextBox.cs | 7 +- .../ClientSource/GUI/MedicalClinicUI.cs | 1056 +++++++++++++++++ .../ClientSource/GUI/RectTransform.cs | 10 +- .../ClientSource/GUI/SubmarineSelection.cs | 24 +- .../ClientSource/GUI/TabMenu.cs | 20 +- .../ClientSource/GUI/UpgradeStore.cs | 3 +- .../BarotraumaClient/ClientSource/GameMain.cs | 9 +- .../ClientSource/GameSession/CrewManager.cs | 29 +- .../GameSession/GameModes/CampaignMode.cs | 10 + .../ClientSource/GameSession/GameSession.cs | 2 +- .../ClientSource/GameSession/MedicalClinic.cs | 386 ++++++ .../ClientSource/GameSession/ReadyCheck.cs | 8 +- .../ClientSource/GameSettings.cs | 3 + .../ClientSource/Items/CharacterInventory.cs | 7 + .../Components/EntitySpawnerComponent.cs | 4 +- .../Items/Components/ItemComponent.cs | 4 +- .../Items/Components/LightComponent.cs | 2 +- .../Items/Components/Machines/Controller.cs | 12 +- .../Items/Components/Machines/Fabricator.cs | 41 +- .../Items/Components/Machines/MiniMap.cs | 14 +- .../Items/Components/Machines/Pump.cs | 11 - .../Items/Components/Machines/Sonar.cs | 45 +- .../Items/Components/Machines/Steering.cs | 2 +- .../Items/Components/Repairable.cs | 1 + .../Items/Components/Signal/ButtonTerminal.cs | 6 +- .../Components/Signal/CustomInterface.cs | 4 +- .../Items/Components/Signal/MotionSensor.cs | 4 +- .../Items/Components/Signal/Wire.cs | 26 +- .../Items/Components/StatusHUD.cs | 4 +- .../ClientSource/Items/Item.cs | 101 +- .../BarotraumaClient/ClientSource/Map/Gap.cs | 16 +- .../BarotraumaClient/ClientSource/Map/Hull.cs | 97 +- .../ClientSource/Map/Levels/WaterRenderer.cs | 55 +- .../ClientSource/Map/Lights/LightSource.cs | 206 ++-- .../ClientSource/Map/LinkedSubmarine.cs | 2 + .../ClientSource/Map/Structure.cs | 13 +- .../ClientSource/Map/Submarine.cs | 7 +- .../ClientSource/Map/WayPoint.cs | 15 +- .../ClientSource/Networking/ChatMessage.cs | 2 +- .../ClientSource/Networking/GameClient.cs | 50 +- .../Primitives/Peers/SteamP2PClientPeer.cs | 20 +- .../ClientSource/Networking/ServerInfo.cs | 13 +- .../ClientSource/Networking/ServerSettings.cs | 11 +- .../ClientSource/Networking/SteamManager.cs | 41 +- .../MultiPlayerCampaignSetupUI.cs | 2 + .../ClientSource/Screens/CampaignUI.cs | 9 + .../Screens/EventEditor/EventEditorScreen.cs | 12 +- .../ClientSource/Screens/NetLobbyScreen.cs | 45 +- .../ClientSource/Screens/ServerListScreen.cs | 25 +- .../Screens/SteamWorkshopScreen.cs | 2 +- .../ClientSource/Screens/SubEditorScreen.cs | 297 ++++- .../ClientSource/Screens/TestScreen.cs | 33 +- .../Serialization/SerializableEntityEditor.cs | 26 +- .../StatusEffects/StatusEffect.cs | 18 +- .../ClientSource/Utils/WikiImage.cs | 2 +- .../BarotraumaClient/LinuxClient.csproj | 2 +- Barotrauma/BarotraumaClient/MacClient.csproj | 2 +- .../BarotraumaClient/WindowsClient.csproj | 2 +- .../BarotraumaServer/LinuxServer.csproj | 2 +- Barotrauma/BarotraumaServer/MacServer.csproj | 2 +- .../ServerSource/Characters/Character.cs | 4 +- .../Characters/CharacterNetworking.cs | 15 +- .../BarotraumaServer/ServerSource/GameMain.cs | 3 + .../ServerSource/GameSession/CrewManager.cs | 2 +- .../GameModes/MultiPlayerCampaign.cs | 35 +- .../ServerSource/GameSession/MedicalClinic.cs | 191 +++ .../Items/Components/Machines/Steering.cs | 4 +- .../Items/Components/Repairable.cs | 1 + .../Items/Components/Signal/ButtonTerminal.cs | 2 +- .../ServerSource/Networking/GameServer.cs | 114 +- .../ServerSource/Networking/RespawnManager.cs | 2 +- .../ServerSource/Networking/ServerSettings.cs | 38 +- .../ServerSource/Screens/NetLobbyScreen.cs | 20 - .../BarotraumaServer/WindowsServer.csproj | 2 +- .../Data/ContentPackages/Vanilla 0.9.xml | 1 + Barotrauma/BarotraumaShared/README.txt | 4 +- .../Characters/AI/EnemyAIController.cs | 23 +- .../Characters/AI/HumanAIController.cs | 67 +- .../Characters/AI/IndoorsSteeringManager.cs | 56 +- .../Characters/AI/Objectives/AIObjective.cs | 1 - .../AI/Objectives/AIObjectiveCleanupItem.cs | 11 +- .../AI/Objectives/AIObjectiveCleanupItems.cs | 2 +- .../AI/Objectives/AIObjectiveCombat.cs | 18 +- .../AI/Objectives/AIObjectiveContainItem.cs | 3 +- .../AI/Objectives/AIObjectiveDecontainItem.cs | 2 + .../Objectives/AIObjectiveFightIntruders.cs | 2 + .../AI/Objectives/AIObjectiveFixLeak.cs | 5 +- .../AI/Objectives/AIObjectiveGetItem.cs | 21 +- .../AI/Objectives/AIObjectiveGoTo.cs | 44 +- .../AI/Objectives/AIObjectiveLoadItem.cs | 120 +- .../AI/Objectives/AIObjectiveLoop.cs | 1 + .../AI/Objectives/AIObjectiveManager.cs | 7 +- .../AI/Objectives/AIObjectivePumpWater.cs | 1 + .../AI/Objectives/AIObjectiveRescue.cs | 2 +- .../SharedSource/Characters/AI/Order.cs | 12 +- .../AI/ShipCommand/ShipIssueWorker.cs | 2 +- .../Characters/AI/ShipCommandManager.cs | 3 +- .../Characters/Animation/AnimController.cs | 7 +- .../Animation/FishAnimController.cs | 82 +- .../Animation/HumanoidAnimController.cs | 8 +- .../SharedSource/Characters/Attack.cs | 5 +- .../SharedSource/Characters/Character.cs | 114 +- .../SharedSource/Characters/CharacterInfo.cs | 33 +- .../Health/Afflictions/Affliction.cs | 3 + .../Health/Afflictions/AfflictionBleeding.cs | 10 +- .../Health/Afflictions/AfflictionHusk.cs | 7 +- .../Health/Afflictions/AfflictionPrefab.cs | 30 +- .../Characters/Health/CharacterHealth.cs | 12 +- .../SharedSource/Characters/Jobs/Job.cs | 6 +- .../SharedSource/Characters/Jobs/Skill.cs | 4 +- .../SharedSource/Characters/Limb.cs | 18 +- .../Params/Ragdoll/RagdollParams.cs | 2 +- .../AbilityConditionAttackData.cs | 59 +- .../AbilityConditionItemInSubmarine.cs | 38 + .../AbilityConditionItemOutsideSubmarine.cs | 23 - .../AbilityConditionItemWreck.cs | 23 - .../AbilityConditionSkill.cs | 4 +- .../Talents/Abilities/AbilityInterfaces.cs | 4 +- .../Talents/Abilities/AbilityObjects.cs | 169 --- .../Talents/Abilities/CharacterAbility.cs | 2 +- .../CharacterAbilityGainSimultaneousSkill.cs | 2 +- .../CharacterAbilityModifyAffliction.cs | 2 +- .../CharacterAbilityModifyAttackData.cs | 2 +- .../CharacterAbilitySpawnItemsToContainer.cs | 2 +- .../CharacterAbilityAlienHoarder.cs | 2 +- .../CharacterAbilityApprenticeship.cs | 6 +- .../CharacterAbilityMultitasker.cs | 2 +- .../CharacterAbilityTandemFire.cs | 4 +- .../SharedSource/DebugConsole.cs | 15 +- .../SharedSource/Events/Missions/Mission.cs | 22 +- .../SharedSource/Events/MonsterEvent.cs | 4 +- .../SharedSource/Events/ScriptedEvent.cs | 8 + .../Extensions/IEnumerableExtensions.cs | 25 +- .../GameAnalytics/GameAnalyticsConsent.cs | 9 +- .../GameAnalytics/GameAnalyticsManager.cs | 1 - .../SharedSource/GameSession/CrewManager.cs | 22 +- .../GameSession/GameModes/CampaignMode.cs | 4 +- .../GameModes/MultiPlayerCampaign.cs | 31 + .../SharedSource/GameSession/GameSession.cs | 26 +- .../SharedSource/GameSession/MedicalClinic.cs | 348 ++++++ .../SharedSource/Items/Components/Door.cs | 10 - .../Components/EntitySpawnerComponent.cs | 34 +- .../Items/Components/GeneticMaterial.cs | 85 +- .../SharedSource/Items/Components/Growable.cs | 6 +- .../Items/Components/Holdable/Holdable.cs | 18 +- .../Items/Components/Holdable/MeleeWeapon.cs | 14 +- .../Items/Components/Holdable/Pickable.cs | 13 +- .../Items/Components/Holdable/RangedWeapon.cs | 29 +- .../Items/Components/Holdable/RepairTool.cs | 33 +- .../Items/Components/ItemComponent.cs | 73 +- .../Items/Components/ItemContainer.cs | 49 +- .../Items/Components/Machines/Controller.cs | 27 +- .../Components/Machines/Deconstructor.cs | 30 +- .../Items/Components/Machines/Fabricator.cs | 94 +- .../Items/Components/Machines/Pump.cs | 17 +- .../Items/Components/Machines/Reactor.cs | 4 +- .../Items/Components/Machines/Sonar.cs | 9 +- .../Items/Components/Machines/Steering.cs | 2 +- .../Items/Components/Power/PowerContainer.cs | 22 +- .../Items/Components/Power/PowerTransfer.cs | 95 +- .../Items/Components/Power/Powered.cs | 2 +- .../Items/Components/Projectile.cs | 5 +- .../Items/Components/Repairable.cs | 15 +- .../Items/Components/Signal/AndComponent.cs | 14 +- .../Items/Components/Signal/ButtonTerminal.cs | 6 +- .../Components/Signal/ConcatComponent.cs | 16 +- .../Items/Components/Signal/Connection.cs | 6 +- .../Components/Signal/ConnectionPanel.cs | 14 +- .../Components/Signal/CustomInterface.cs | 3 - .../Items/Components/Signal/DelayComponent.cs | 9 +- .../Components/Signal/EqualsComponent.cs | 12 +- .../Components/Signal/GreaterComponent.cs | 20 +- .../Items/Components/Signal/LightComponent.cs | 10 +- .../Items/Components/Signal/MotionSensor.cs | 32 +- .../Items/Components/Signal/OrComponent.cs | 6 +- .../Items/Components/Signal/OxygenDetector.cs | 13 +- .../Items/Components/Signal/WaterDetector.cs | 10 +- .../Items/Components/Signal/WifiComponent.cs | 14 + .../Items/Components/Signal/Wire.cs | 7 - .../Items/Components/Signal/XorComponent.cs | 6 +- .../Items/Components/TriggerComponent.cs | 3 +- .../SharedSource/Items/Components/Turret.cs | 6 +- .../SharedSource/Items/Inventory.cs | 5 +- .../SharedSource/Items/Item.cs | 80 +- .../SharedSource/Items/ItemPrefab.cs | 16 +- .../Map/Creatures/BallastFloraBehavior.cs | 2 +- .../SharedSource/Map/Explosion.cs | 21 +- .../BarotraumaShared/SharedSource/Map/Hull.cs | 2 +- .../SharedSource/Map/Levels/Level.cs | 78 +- .../Map/Levels/LevelObjects/LevelTrigger.cs | 54 +- .../SharedSource/Map/Map/Location.cs | 22 +- .../SharedSource/Map/MapEntity.cs | 31 +- .../SharedSource/Map/MapEntityPrefab.cs | 2 + .../SharedSource/Map/Structure.cs | 27 +- .../SharedSource/Map/Submarine.cs | 24 +- .../SharedSource/Map/SubmarineBody.cs | 87 +- .../SharedSource/Map/SubmarineInfo.cs | 15 +- .../SharedSource/Networking/ChatMessage.cs | 39 +- .../Networking/INetSerializableStruct.cs | 547 +++++++++ .../SharedSource/Networking/NetworkMember.cs | 10 +- .../Networking/OrderChatMessage.cs | 32 +- .../Networking/Primitives/Enums.cs | 10 +- .../SharedSource/Networking/ServerLog.cs | 15 +- .../SharedSource/Networking/ServerSettings.cs | 13 +- .../SharedSource/Networking/SteamManager.cs | 8 + .../SharedSource/Physics/PhysicsBody.cs | 8 +- .../Serialization/SerializableProperty.cs | 319 +++-- .../StatusEffects/DelayedEffect.cs | 27 +- .../StatusEffects/PropertyConditional.cs | 196 ++- .../StatusEffects/StatusEffect.cs | 327 +++-- .../SharedSource/SteamAchievementManager.cs | 76 +- .../SharedSource/Utils/IdRemap.cs | 2 +- .../SharedSource/Utils/SafeIO.cs | 24 +- .../SharedSource/Utils/SaveUtil.cs | 40 +- .../SharedSource/Utils/TaskExtensions.cs | 18 + .../SharedSource/Utils/ToolBox.cs | 10 - .../BarotraumaShared/Submarines/Barsuk.sub | Bin 0 -> 235503 bytes .../BarotraumaShared/Submarines/Berilia.sub | Bin 315994 -> 316003 bytes .../BarotraumaShared/Submarines/Orca.sub | Bin 233950 -> 50476 bytes .../BarotraumaShared/Submarines/Orca2.sub | Bin 241896 -> 55672 bytes .../BarotraumaShared/Submarines/R-29.sub | Bin 236256 -> 236252 bytes Barotrauma/BarotraumaShared/changelog.txt | 136 +++ README.md | 2 +- 237 files changed, 6430 insertions(+), 2205 deletions(-) create mode 100644 Barotrauma/BarotraumaClient/ClientSource/GUI/MedicalClinicUI.cs create mode 100644 Barotrauma/BarotraumaClient/ClientSource/GameSession/MedicalClinic.cs create mode 100644 Barotrauma/BarotraumaServer/ServerSource/GameSession/MedicalClinic.cs create mode 100644 Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/AbilityConditionals/AbilityConditionData/AbilityConditionItemInSubmarine.cs delete mode 100644 Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/AbilityConditionals/AbilityConditionData/AbilityConditionItemOutsideSubmarine.cs delete mode 100644 Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/AbilityConditionals/AbilityConditionData/AbilityConditionItemWreck.cs create mode 100644 Barotrauma/BarotraumaShared/SharedSource/GameSession/MedicalClinic.cs create mode 100644 Barotrauma/BarotraumaShared/SharedSource/Networking/INetSerializableStruct.cs create mode 100644 Barotrauma/BarotraumaShared/SharedSource/Utils/TaskExtensions.cs create mode 100644 Barotrauma/BarotraumaShared/Submarines/Barsuk.sub diff --git a/Barotrauma/BarotraumaClient/ClientSource/Characters/Character.cs b/Barotrauma/BarotraumaClient/ClientSource/Characters/Character.cs index f1dd4470c..83e1255cb 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Characters/Character.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Characters/Character.cs @@ -1156,9 +1156,9 @@ namespace Barotrauma } } - partial void OnTalentGiven(string talentIdentifier) + partial void OnTalentGiven(TalentPrefab talentPrefab) { - AddMessage(TextManager.Get("talentname." + talentIdentifier.ToString()), GUI.Style.Yellow, playSound: this == Controlled); + AddMessage(TextManager.Get("talentname." + talentPrefab.Identifier), GUI.Style.Yellow, playSound: this == Controlled); } } } diff --git a/Barotrauma/BarotraumaClient/ClientSource/Characters/CharacterInfo.cs b/Barotrauma/BarotraumaClient/ClientSource/Characters/CharacterInfo.cs index 3d42e6e3f..754c97f22 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Characters/CharacterInfo.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Characters/CharacterInfo.cs @@ -521,6 +521,7 @@ namespace Barotrauma ch.SkinColor = skinColor; ch.HairColor = hairColor; ch.FacialHairColor = facialHairColor; + ch.SetPersonalityTrait(); if (ch.Job != null) { foreach (KeyValuePair skill in skillLevels) diff --git a/Barotrauma/BarotraumaClient/ClientSource/Characters/Health/AfflictionHusk.cs b/Barotrauma/BarotraumaClient/ClientSource/Characters/Health/AfflictionHusk.cs index f4a5f282c..73c444116 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Characters/Health/AfflictionHusk.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Characters/Health/AfflictionHusk.cs @@ -2,12 +2,19 @@ { partial class AfflictionHusk : Affliction { + private InfectionState? prevDisplayedMessage; partial void UpdateMessages() { if (Prefab is AfflictionPrefabHusk { SendMessages: false }) { return; } + if (prevDisplayedMessage.HasValue && prevDisplayedMessage.Value == State) { return; } + switch (State) { case InfectionState.Dormant: + if (Strength < DormantThreshold * 0.5f) + { + return; + } GUI.AddMessage(TextManager.Get("HuskDormant"), GUI.Style.Red); break; case InfectionState.Transition: @@ -23,6 +30,7 @@ default: break; } + prevDisplayedMessage = State; } } } diff --git a/Barotrauma/BarotraumaClient/ClientSource/Characters/Health/CharacterHealth.cs b/Barotrauma/BarotraumaClient/ClientSource/Characters/Health/CharacterHealth.cs index 2660e8a10..acf9b7fd7 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Characters/Health/CharacterHealth.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Characters/Health/CharacterHealth.cs @@ -531,6 +531,8 @@ namespace Barotrauma bloodParticleTimer -= deltaTime * (affliction.Strength / 10.0f); if (bloodParticleTimer <= 0.0f) { + Limb limb = targetLimb ?? Character.AnimController.MainLimb; + bool inWater = Character.AnimController.InWater; var drawTarget = inWater ? Particles.ParticlePrefab.DrawTargetType.Water : Particles.ParticlePrefab.DrawTargetType.Air; var emitter = Character.BloodEmitters.FirstOrDefault(e => e.Prefab.ParticlePrefab.DrawTarget == drawTarget || e.Prefab.ParticlePrefab.DrawTarget == Particles.ParticlePrefab.DrawTargetType.Both); @@ -543,13 +545,13 @@ namespace Barotrauma if (!inWater) { bloodParticleSize *= 2.0f; - velocity = targetLimb.LinearVelocity * 100.0f; + velocity = limb.LinearVelocity * 100.0f; } // TODO: use the blood emitter? var blood = GameMain.ParticleManager.CreateParticle( inWater ? Character.Params.BleedParticleWater : Character.Params.BleedParticleAir, - targetLimb.WorldPosition, velocity, 0.0f, Character.AnimController.CurrentHull); + limb.WorldPosition, velocity, 0.0f, Character.AnimController.CurrentHull); if (blood != null && !inWater) { @@ -1122,23 +1124,24 @@ namespace Barotrauma } public static Color GetAfflictionIconColor(AfflictionPrefab prefab, Affliction affliction) + { + return GetAfflictionIconColor(prefab, affliction.Strength); + } + + public static Color GetAfflictionIconColor(AfflictionPrefab prefab, float afflictionStrength) { // No specific colors, use generic if (prefab.IconColors == null) { if (prefab.IsBuff) { - return ToolBox.GradientLerp(affliction.Strength / prefab.MaxStrength, GUI.Style.BuffColorLow, GUI.Style.BuffColorMedium, GUI.Style.BuffColorHigh); - } - else - { - return ToolBox.GradientLerp(affliction.Strength / prefab.MaxStrength, GUI.Style.DebuffColorLow, GUI.Style.DebuffColorMedium, GUI.Style.DebuffColorHigh); + return ToolBox.GradientLerp(afflictionStrength / prefab.MaxStrength, GUI.Style.BuffColorLow, GUI.Style.BuffColorMedium, GUI.Style.BuffColorHigh); } + + return ToolBox.GradientLerp(afflictionStrength / prefab.MaxStrength, GUI.Style.DebuffColorLow, GUI.Style.DebuffColorMedium, GUI.Style.DebuffColorHigh); } - else - { - return ToolBox.GradientLerp(affliction.Strength / prefab.MaxStrength, prefab.IconColors); - } + + return ToolBox.GradientLerp(afflictionStrength / prefab.MaxStrength, prefab.IconColors); } public static Color GetAfflictionIconColor(Affliction affliction) => GetAfflictionIconColor(affliction.Prefab, affliction); @@ -1153,7 +1156,7 @@ namespace Barotrauma return; } - if (afflictionsDirty()) + if (afflictionsDirty() || selectedLimb != currentDisplayedLimb) { var currentAfflictions = afflictions.Where(a => ShouldDisplayAfflictionOnLimb(a, selectedLimb)).Select(a => a.Key); CreateAfflictionInfos(currentAfflictions); diff --git a/Barotrauma/BarotraumaClient/ClientSource/DebugConsole.cs b/Barotrauma/BarotraumaClient/ClientSource/DebugConsole.cs index 14119e426..7498d3d57 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/DebugConsole.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/DebugConsole.cs @@ -1120,7 +1120,7 @@ namespace Barotrauma return; } - if (Submarine.MainSub.SaveAs(Barotrauma.IO.Path.Combine(SubmarineInfo.SavePath, fileName + ".sub"))) + if (Submarine.MainSub.TrySaveAs(Barotrauma.IO.Path.Combine(SubmarineInfo.SavePath, fileName + ".sub"))) { NewMessage("Sub saved", Color.Green); } @@ -2392,8 +2392,9 @@ namespace Barotrauma commands.Add(new Command("querylobbies", "Queries all SteamP2P lobbies", (args) => { TaskPool.Add("DebugQueryLobbies", - SteamManager.LobbyQueryRequest(), (t) => { - var lobbies = ((Task>)t).Result; + SteamManager.LobbyQueryRequest(), (t) => + { + t.TryGetResult(out List lobbies); foreach (var lobby in lobbies) { NewMessage(lobby.GetData("name") + ", " + lobby.GetData("lobbyowner"), Color.Yellow); diff --git a/Barotrauma/BarotraumaClient/ClientSource/Events/Missions/ScanMission.cs b/Barotrauma/BarotraumaClient/ClientSource/Events/Missions/ScanMission.cs index 93dadacc4..c7488925c 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Events/Missions/ScanMission.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Events/Missions/ScanMission.cs @@ -60,7 +60,16 @@ namespace Barotrauma ushort id = msg.ReadUInt16(); bool scanned = msg.ReadBoolean(); Entity entity = Entity.FindEntityByID(id); - scanTargets.Add(entity as WayPoint, scanned); + if (!(entity is WayPoint wayPoint)) + { + string errorMsg = $"Failed to find a waypoint in ScanMission.ClientReadScanTargetStatus. Entity {id} was {(entity?.ToString() ?? null)}"; + DebugConsole.ThrowError(errorMsg); + GameAnalyticsManager.AddErrorEventOnce("ScanMission.ClientReadScanTargetStatus", GameAnalyticsManager.ErrorSeverity.Error, errorMsg); + } + else + { + scanTargets.Add(wayPoint, scanned); + } } } } diff --git a/Barotrauma/BarotraumaClient/ClientSource/Fonts/ScalableFont.cs b/Barotrauma/BarotraumaClient/ClientSource/Fonts/ScalableFont.cs index aff1e4c05..b2540f17c 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Fonts/ScalableFont.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Fonts/ScalableFont.cs @@ -1,8 +1,10 @@ -using Microsoft.Xna.Framework; +using Barotrauma.Extensions; +using Microsoft.Xna.Framework; using Microsoft.Xna.Framework.Graphics; using SharpFont; using System; using System.Collections.Generic; +using System.Linq; using System.Xml.Linq; namespace Barotrauma @@ -130,7 +132,7 @@ namespace Barotrauma /// Character ranges between each even element with their corresponding odd element. Default is 0x20 to 0xFFFF. /// Texture dimensions. Default is 512x512. /// Base character used to shift all other characters downwards when rendering. Defaults to T. - public void RenderAtlas(GraphicsDevice gd, uint[] charRanges = null, int texDims = 1024, uint baseChar = 0x54) + private void RenderAtlas(GraphicsDevice gd, uint[] charRanges = null, int texDims = 1024, uint baseChar = 0x54) { if (DynamicLoading) { return; } @@ -253,13 +255,19 @@ namespace Barotrauma } } - public void DynamicRenderAtlas(GraphicsDevice gd, uint character, int texDims = 1024, uint baseChar = 0x54) + private void DynamicRenderAtlas(GraphicsDevice gd, uint character, int texDims = 1024, uint baseChar = 0x54) + => DynamicRenderAtlas(gd, character.ToEnumerable(), texDims, baseChar); + + private void DynamicRenderAtlas(GraphicsDevice gd, string str, int texDims = 1024, uint baseChar = 0x54) + => DynamicRenderAtlas(gd, str.Distinct().Select(c => (uint)c), texDims, baseChar); + + private void DynamicRenderAtlas(GraphicsDevice gd, IEnumerable characters, int texDims = 1024, uint baseChar = 0x54) { if (System.Threading.Thread.CurrentThread != GameMain.MainThread) { CrossThread.RequestExecutionOnMainThread(() => { - DynamicRenderAtlas(gd, character, texDims, baseChar); + DynamicRenderAtlas(gd, characters, texDims, baseChar); }); return; } @@ -271,7 +279,6 @@ namespace Barotrauma lock (mutex) { - if (texCoords.ContainsKey(character)) { return; } if (textures.Count == 0) { this.texDims = texDims; @@ -282,79 +289,90 @@ namespace Barotrauma textures.Add(new Texture2D(gd, texDims, texDims, false, SurfaceFormat.Color)); } - uint glyphIndex = face.GetCharIndex(character); - if (glyphIndex == 0) { return; } - - face.SetPixelSizes(0, size); - face.LoadGlyph(glyphIndex, LoadFlags.Default, LoadTarget.Normal); - if (face.Glyph.Metrics.Width == 0 || face.Glyph.Metrics.Height == 0) + bool anyChanges = false; + bool firstChar = true; + foreach (var character in characters) { - if (face.Glyph.Metrics.HorizontalAdvance > 0) + if (texCoords.ContainsKey(character)) { continue; } + + uint glyphIndex = face.GetCharIndex(character); + if (glyphIndex == 0) { continue; } + + face.SetPixelSizes(0, size); + face.LoadGlyph(glyphIndex, LoadFlags.Default, LoadTarget.Normal); + if (face.Glyph.Metrics.Width == 0 || face.Glyph.Metrics.Height == 0) { - //glyph is empty, but char still applies advance - GlyphData blankData = new GlyphData( - advance: (float)face.Glyph.Metrics.HorizontalAdvance, - texIndex: -1); //indicates no texture because the glyph is empty - texCoords.Add(character, blankData); + if (face.Glyph.Metrics.HorizontalAdvance > 0) + { + //glyph is empty, but char still applies advance + GlyphData blankData = new GlyphData( + advance: (float)face.Glyph.Metrics.HorizontalAdvance, + texIndex: -1); //indicates no texture because the glyph is empty + texCoords.Add(character, blankData); + } + continue; } - return; - } - //stacktrace doesn't really work that well when RenderGlyph throws an exception - face.Glyph.RenderGlyph(RenderMode.Normal); - bitmap = (byte[])face.Glyph.Bitmap.BufferData.Clone(); - glyphWidth = face.Glyph.Bitmap.Width; - glyphHeight = bitmap.Length / glyphWidth; - horizontalAdvance = face.Glyph.Metrics.HorizontalAdvance; - drawOffset = new Vector2(face.Glyph.BitmapLeft, baseHeight * 14 / 10 - face.Glyph.BitmapTop); - - if (glyphWidth > texDims - 1 || glyphHeight > texDims - 1) - { - throw new Exception(filename + ", " + size.ToString() + ", " + (char)character + "; Glyph dimensions exceed texture atlas dimensions"); - } - - currentDynamicAtlasNextY = Math.Max(currentDynamicAtlasNextY, glyphHeight + 2); - if (currentDynamicAtlasCoords.X + glyphWidth + 2 > texDims - 1) - { - currentDynamicAtlasCoords.X = 0; - currentDynamicAtlasCoords.Y += currentDynamicAtlasNextY; - currentDynamicAtlasNextY = 0; - } - //no more room in current texture atlas, create a new one - if (currentDynamicAtlasCoords.Y + glyphHeight + 2 > texDims - 1) - { - currentDynamicAtlasCoords.X = 0; - currentDynamicAtlasCoords.Y = 0; - currentDynamicAtlasNextY = 0; - textures.Add(new Texture2D(gd, texDims, texDims, false, SurfaceFormat.Color)); - currentDynamicPixelBuffer = null; - } + //stacktrace doesn't really work that well when RenderGlyph throws an exception + face.Glyph.RenderGlyph(RenderMode.Normal); + bitmap = (byte[])face.Glyph.Bitmap.BufferData.Clone(); + glyphWidth = face.Glyph.Bitmap.Width; + glyphHeight = bitmap.Length / glyphWidth; + horizontalAdvance = face.Glyph.Metrics.HorizontalAdvance; + drawOffset = new Vector2(face.Glyph.BitmapLeft, baseHeight * 14 / 10 - face.Glyph.BitmapTop); - GlyphData newData = new GlyphData( - advance: (float)horizontalAdvance, - texIndex: textures.Count - 1, - texCoords: new Rectangle((int)currentDynamicAtlasCoords.X, (int)currentDynamicAtlasCoords.Y, glyphWidth, glyphHeight), - drawOffset: drawOffset - ); - texCoords.Add(character, newData); - - if (currentDynamicPixelBuffer == null) - { - currentDynamicPixelBuffer = new uint[texDims * texDims]; - textures[newData.TexIndex].GetData(currentDynamicPixelBuffer, 0, texDims * texDims); - } - - for (int y = 0; y < glyphHeight; y++) - { - for (int x = 0; x < glyphWidth; x++) + if (glyphWidth > texDims - 1 || glyphHeight > texDims - 1) { - byte byteColor = bitmap[x + y * glyphWidth]; - currentDynamicPixelBuffer[((int)currentDynamicAtlasCoords.X + x) + ((int)currentDynamicAtlasCoords.Y + y) * texDims] = (uint)(byteColor << 24 | 0x00ffffff); + throw new Exception(filename + ", " + size.ToString() + ", " + (char)character + "; Glyph dimensions exceed texture atlas dimensions"); } - } - textures[newData.TexIndex].SetData(currentDynamicPixelBuffer); - currentDynamicAtlasCoords.X += glyphWidth + 2; + currentDynamicAtlasNextY = Math.Max(currentDynamicAtlasNextY, glyphHeight + 2); + if (currentDynamicAtlasCoords.X + glyphWidth + 2 > texDims - 1) + { + currentDynamicAtlasCoords.X = 0; + currentDynamicAtlasCoords.Y += currentDynamicAtlasNextY; + currentDynamicAtlasNextY = 0; + } + //no more room in current texture atlas, create a new one + if (currentDynamicAtlasCoords.Y + glyphHeight + 2 > texDims - 1) + { + if (!firstChar) { textures[^1].SetData(currentDynamicPixelBuffer); } + currentDynamicAtlasCoords.X = 0; + currentDynamicAtlasCoords.Y = 0; + currentDynamicAtlasNextY = 0; + textures.Add(new Texture2D(gd, texDims, texDims, false, SurfaceFormat.Color)); + currentDynamicPixelBuffer = null; + } + + GlyphData newData = new GlyphData( + advance: (float)horizontalAdvance, + texIndex: textures.Count - 1, + texCoords: new Rectangle((int)currentDynamicAtlasCoords.X, (int)currentDynamicAtlasCoords.Y, glyphWidth, glyphHeight), + drawOffset: drawOffset + ); + texCoords.Add(character, newData); + + if (currentDynamicPixelBuffer == null) + { + currentDynamicPixelBuffer = new uint[texDims * texDims]; + textures[newData.TexIndex].GetData(currentDynamicPixelBuffer, 0, texDims * texDims); + } + + for (int y = 0; y < glyphHeight; y++) + { + for (int x = 0; x < glyphWidth; x++) + { + byte byteColor = bitmap[x + y * glyphWidth]; + currentDynamicPixelBuffer[((int)currentDynamicAtlasCoords.X + x) + ((int)currentDynamicAtlasCoords.Y + y) * texDims] = (uint)(byteColor << 24 | 0x00ffffff); + } + } + + currentDynamicAtlasCoords.X += glyphWidth + 2; + firstChar = false; + anyChanges = true; + } + + if (anyChanges) { textures[^1].SetData(currentDynamicPixelBuffer); } } } @@ -374,6 +392,10 @@ namespace Barotrauma public void DrawString(SpriteBatch sb, string text, Vector2 position, Color color, float rotation, Vector2 origin, Vector2 scale, SpriteEffects se, float layerDepth) { if (textures.Count == 0 && !DynamicLoading) { return; } + if (DynamicLoading) + { + DynamicRenderAtlas(graphicsDevice, text); + } int lineNum = 0; Vector2 currentPos = position; @@ -390,10 +412,6 @@ namespace Barotrauma } uint charIndex = text[i]; - if (DynamicLoading) - { - DynamicRenderAtlas(graphicsDevice, charIndex); - } GlyphData gd = GetGlyphData(charIndex); if (gd.TexIndex >= 0) @@ -417,6 +435,10 @@ namespace Barotrauma public void DrawString(SpriteBatch sb, string text, Vector2 position, Color color) { if (textures.Count == 0 && !DynamicLoading) { return; } + if (DynamicLoading) + { + DynamicRenderAtlas(graphicsDevice, text); + } Vector2 currentPos = position; for (int i = 0; i < text.Length; i++) @@ -429,10 +451,6 @@ namespace Barotrauma } uint charIndex = text[i]; - if (DynamicLoading) - { - DynamicRenderAtlas(graphicsDevice, charIndex); - } GlyphData gd = GetGlyphData(charIndex); if (gd.TexIndex >= 0) @@ -452,6 +470,10 @@ namespace Barotrauma public void DrawStringWithColors(SpriteBatch sb, string text, Vector2 position, Color color, float rotation, Vector2 origin, Vector2 scale, SpriteEffects se, float layerDepth, List richTextData, int rtdOffset = 0) { if (textures.Count == 0 && !DynamicLoading) { return; } + if (DynamicLoading) + { + DynamicRenderAtlas(graphicsDevice, text); + } int lineNum = 0; Vector2 currentPos = position; @@ -472,10 +494,6 @@ namespace Barotrauma } uint charIndex = text[i]; - if (DynamicLoading && !texCoords.ContainsKey(charIndex)) - { - DynamicRenderAtlas(graphicsDevice, charIndex); - } Color currentTextColor; @@ -626,6 +644,10 @@ namespace Barotrauma { retVal.Y = baseHeight; } + if (DynamicLoading) + { + DynamicRenderAtlas(graphicsDevice, text); + } for (int i = 0; i < text.Length; i++) { @@ -636,10 +658,6 @@ namespace Barotrauma continue; } uint charIndex = text[i]; - if (DynamicLoading && !texCoords.ContainsKey(charIndex)) - { - DynamicRenderAtlas(graphicsDevice, charIndex); - } GlyphData gd = GetGlyphData(charIndex); currentLineX += gd.Advance; diff --git a/Barotrauma/BarotraumaClient/ClientSource/GUI/GUI.cs b/Barotrauma/BarotraumaClient/ClientSource/GUI/GUI.cs index 0ca71144c..5f6afa2e3 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/GUI/GUI.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/GUI/GUI.cs @@ -44,12 +44,12 @@ namespace Barotrauma Waiting, // Hourglass WaitingBackground // Cursor + Hourglass } - + public static class GUI { public static GUICanvas Canvas => GUICanvas.Instance; public static CursorState MouseCursor = CursorState.Default; - + public static readonly SamplerState SamplerState = new SamplerState() { Filter = TextureFilter.Linear, @@ -116,14 +116,14 @@ namespace Barotrauma public static float SlicedSpriteScale { - get + get { - if (Math.Abs(1.0f - Scale) < 0.1f) - { + if (Math.Abs(1.0f - Scale) < 0.1f) + { //don't scale if very close to the "reference resolution" - return 1.0f; + return 1.0f; } - return Scale; + return Scale; } } @@ -306,7 +306,7 @@ namespace Barotrauma t = new Texture2D(GraphicsDevice, 1, 1); t.SetData(new Color[] { Color.White });// fill the texture with white }); - + SubmarineIcon = new Sprite("Content/UI/MainIconsAtlas.png", new Rectangle(452, 385, 182, 81), new Vector2(0.5f, 0.5f)); arrow = new Sprite("Content/UI/MainIconsAtlas.png", new Rectangle(393, 393, 49, 45), new Vector2(0.5f, 0.5f)); SpeechBubbleIcon = new Sprite("Content/UI/MainIconsAtlas.png", new Rectangle(385, 449, 66, 60), new Vector2(0.5f, 0.5f)); @@ -314,7 +314,7 @@ namespace Barotrauma } /// - /// By default, all the gui elements are drawn automatically in the same order they appear on the update list. + /// By default, all the gui elements are drawn automatically in the same order they appear on the update list. /// public static void Draw(Camera cam, SpriteBatch spriteBatch) { @@ -706,11 +706,11 @@ namespace Barotrauma spriteBatch.Begin(SpriteSortMode.Immediate, effect: GameMain.GameScreen.PostProcessEffect); float scale = Math.Max( - (float)GameMain.GraphicsWidth / backgroundSprite.SourceRect.Width, + (float)GameMain.GraphicsWidth / backgroundSprite.SourceRect.Width, (float)GameMain.GraphicsHeight / backgroundSprite.SourceRect.Height) * 1.1f; float paddingX = backgroundSprite.SourceRect.Width * scale - GameMain.GraphicsWidth; float paddingY = backgroundSprite.SourceRect.Height * scale - GameMain.GraphicsHeight; - + double noiseT = (Timing.TotalTime * 0.02f); Vector2 pos = new Vector2((float)PerlinNoise.CalculatePerlin(noiseT, noiseT, 0) - 0.5f, (float)PerlinNoise.CalculatePerlin(noiseT, noiseT, 0.5f) - 0.5f); pos = new Vector2(pos.X * paddingX, pos.Y * paddingY); @@ -719,7 +719,7 @@ namespace Barotrauma new Vector2(GameMain.GraphicsWidth, GameMain.GraphicsHeight) / 2 + pos, null, Color.White, 0.0f, backgroundSprite.size / 2, scale, SpriteEffects.None, 0.0f); - + spriteBatch.End(); } @@ -759,8 +759,8 @@ namespace Barotrauma else { additions.Enqueue(component); - } - } + } + } } /// @@ -786,7 +786,7 @@ namespace Barotrauma component.Children.ForEach(c => RemoveFromUpdateList(c)); } } - } + } } public static void ClearUpdateList() @@ -900,7 +900,7 @@ namespace Barotrauma { GUIMessageBox.VisibleBox.AddToGUIUpdateList(); } - } + } } #endregion @@ -941,7 +941,7 @@ namespace Barotrauma inventoryIndex = updateList.IndexOf(CharacterHUD.HUDFrame); } - if ((!PlayerInput.PrimaryMouseButtonHeld() && !PlayerInput.PrimaryMouseButtonClicked()) || + if ((!PlayerInput.PrimaryMouseButtonHeld() && !PlayerInput.PrimaryMouseButtonClicked()) || (prevMouseOn == null && !PlayerInput.SecondaryMouseButtonHeld() && !Inventory.DraggingItems.Any())) { for (var i = updateList.Count - 1; i > inventoryIndex; i--) @@ -967,7 +967,7 @@ namespace Barotrauma return MouseOn; } } - + private static CursorState UpdateMouseCursorState(GUIComponent c) { lock (mutex) @@ -994,7 +994,7 @@ namespace Barotrauma } if (Wire.DraggingWire != null) { return CursorState.Dragging; } } - + if (c == null || c is GUICustomComponent) { switch (Screen.Selected) @@ -1027,7 +1027,7 @@ namespace Barotrauma } } } - + if (c != null && c.Visible) { if (c.AlwaysOverrideCursor) { return c.HoverCursor; } @@ -1036,20 +1036,20 @@ namespace Barotrauma // And this is of course picked up as clickable area. // There has to be a better way of checking this but for now this works. var monitorRect = new Rectangle(0, 0, GameMain.GraphicsWidth, GameMain.GraphicsHeight); - + var parent = FindInteractParent(c); - + if (c.Enabled) { // Some parent elements take priority // but not when the child is a GUIButton or GUITickBox - if (!(parent is GUIButton) && !(parent is GUIListBox) || + if (!(parent is GUIButton) && !(parent is GUIListBox) || (c is GUIButton) || (c is GUITickBox)) { if (!c.Rect.Equals(monitorRect)) { return c.HoverCursor; } } } - + // Children in list boxes can be interacted with despite not having // a GUIButton inside of them so instead of hard coding we check if // the children can be interacted with by checking their hover state @@ -1084,7 +1084,7 @@ namespace Barotrauma { // Health menus if (character.CharacterHealth.MouseOnElement) { return CursorState.Hand; } - + if (character.SelectedCharacter != null) { if (character.SelectedCharacter.CharacterHealth.MouseOnElement) @@ -1096,7 +1096,7 @@ namespace Barotrauma // Character is hovering over an item placed in the world if (character.FocusedItem != null) { return CursorState.Hand; } } - + return CursorState.Default; static GUIComponent FindInteractParent(GUIComponent component) @@ -1130,7 +1130,7 @@ namespace Barotrauma } } } - + static bool ContainsMouse(GUIComponent component) { // If component has a mouse rectangle then use that, if not use it's physical rect @@ -1138,7 +1138,7 @@ namespace Barotrauma component.MouseRect.Contains(PlayerInput.MousePosition) : component.Rect.Contains(PlayerInput.MousePosition); } - } + } } /// @@ -1153,8 +1153,8 @@ namespace Barotrauma { MouseCursor = CursorState.Waiting; var timeOut = DateTime.Now + new TimeSpan(0, 0, waitSeconds); - while (DateTime.Now < timeOut) - { + while (DateTime.Now < timeOut) + { if (endCondition != null) { try @@ -1163,13 +1163,13 @@ namespace Barotrauma } catch { break; } } - yield return CoroutineStatus.Running; + yield return CoroutineStatus.Running; } if (MouseCursor == CursorState.Waiting) { MouseCursor = CursorState.Default; } yield return CoroutineStatus.Success; } } - + public static void ClearCursorWait() { lock (mutex) @@ -1208,7 +1208,7 @@ namespace Barotrauma { debugDrawMetadataOffset--; } - + if (PlayerInput.KeyHit(Keys.Down)) { debugDrawMetadataOffset++; @@ -1240,17 +1240,20 @@ namespace Barotrauma debugDrawMetadataOffset = 0; } } - + } HandlePersistingElements(deltaTime); RefreshUpdateList(); UpdateMouseOn(); Debug.Assert(updateList.Count == updateListSet.Count); - updateList.ForEach(c => c.UpdateAuto(deltaTime)); + foreach (var c in updateList) + { + c.UpdateAuto(deltaTime); + } UpdateMessages(deltaTime); UpdateSavingIndicator(deltaTime); - } + } } private static void UpdateMessages(float deltaTime) @@ -1281,17 +1284,16 @@ namespace Barotrauma //only the first message (the currently visible one) is updated at a time break; } - + foreach (GUIMessage msg in messages) { if (!msg.WorldSpace) { continue; } - msg.Timer -= deltaTime; - msg.Pos += msg.Velocity * deltaTime; + msg.Timer -= deltaTime; + msg.Pos += msg.Velocity * deltaTime; } messages.RemoveAll(m => m.Timer <= 0.0f); } - } private static void UpdateSavingIndicator(float deltaTime) @@ -1628,7 +1630,7 @@ namespace Barotrauma private static void DrawMessages(SpriteBatch spriteBatch, Camera cam) { - if (messages.Count == 0) return; + if (messages.Count == 0) { return; } bool useScissorRect = messages.Any(m => !m.WorldSpace); Rectangle prevScissorRect = spriteBatch.GraphicsDevice.ScissorRectangle; @@ -1647,7 +1649,7 @@ namespace Barotrauma msg.Font.DrawString(spriteBatch, msg.Text, drawPos + msg.DrawPos + Vector2.One, Color.Black, 0, msg.Origin, 1.0f, SpriteEffects.None, 0); msg.Font.DrawString(spriteBatch, msg.Text, drawPos + msg.DrawPos, msg.Color, 0, msg.Origin, 1.0f, SpriteEffects.None, 0); - break; + break; } if (useScissorRect) @@ -1656,11 +1658,11 @@ namespace Barotrauma spriteBatch.GraphicsDevice.ScissorRectangle = prevScissorRect; spriteBatch.Begin(SpriteSortMode.Deferred); } - + foreach (GUIMessage msg in messages) { if (!msg.WorldSpace) { continue; } - + if (cam != null) { float alpha = 1.0f; @@ -1669,7 +1671,7 @@ namespace Barotrauma Vector2 drawPos = cam.WorldToScreen(msg.DrawPos); msg.Font.DrawString(spriteBatch, msg.Text, drawPos + Vector2.One, Color.Black * alpha, 0, msg.Origin, 1.0f, SpriteEffects.None, 0); msg.Font.DrawString(spriteBatch, msg.Text, drawPos, msg.Color * alpha, 0, msg.Origin, 1.0f, SpriteEffects.None, 0); - } + } } messages.RemoveAll(m => m.Timer <= 0.0f); @@ -1770,7 +1772,7 @@ namespace Barotrauma { int textureWidth = Math.Max(radius * 2, 1); int textureHeight = Math.Max(height + radius * 2, 1); - + Color[] data = new Color[textureWidth * textureHeight]; // Colour the entire texture transparent first. @@ -1880,9 +1882,9 @@ namespace Barotrauma /// Creates multiple elements with relative size and positions them automatically. /// public static List CreateElements(int count, Vector2 relativeSize, RectTransform parent, Func constructor, - Anchor anchor = Anchor.TopLeft, Pivot? pivot = null, Point? minSize = null, Point? maxSize = null, - int absoluteSpacing = 0, float relativeSpacing = 0, Func extraSpacing = null, - int startOffsetAbsolute = 0, float startOffsetRelative = 0, bool isHorizontal = false) + Anchor anchor = Anchor.TopLeft, Pivot? pivot = null, Point? minSize = null, Point? maxSize = null, + int absoluteSpacing = 0, float relativeSpacing = 0, Func extraSpacing = null, + int startOffsetAbsolute = 0, float startOffsetRelative = 0, bool isHorizontal = false) where T : GUIComponent { return CreateElements(count, parent, constructor, relativeSize, null, anchor, pivot, minSize, maxSize, absoluteSpacing, relativeSpacing, extraSpacing, startOffsetAbsolute, startOffsetRelative, isHorizontal); @@ -1891,8 +1893,8 @@ namespace Barotrauma /// /// Creates multiple elements with absolute size and positions them automatically. /// - public static List CreateElements(int count, Point absoluteSize, RectTransform parent, Func constructor, - Anchor anchor = Anchor.TopLeft, Pivot? pivot = null, + public static List CreateElements(int count, Point absoluteSize, RectTransform parent, Func constructor, + Anchor anchor = Anchor.TopLeft, Pivot? pivot = null, int absoluteSpacing = 0, float relativeSpacing = 0, Func extraSpacing = null, int startOffsetAbsolute = 0, float startOffsetRelative = 0, bool isHorizontal = false) where T : GUIComponent @@ -1991,7 +1993,7 @@ namespace Barotrauma if (i == 0) numberInput.IntValue = value.X; else - numberInput.IntValue = value.Y; + numberInput.IntValue = value.Y; } return frame; } @@ -2028,6 +2030,16 @@ namespace Barotrauma return frame; } + public static void NotifyPrompt(string header, string body) + { + GUIMessageBox msgBox = new GUIMessageBox(header, body, new[] { TextManager.Get("Ok") }, new Vector2(0.2f, 0.175f), minSize: new Point(300, 175)); + msgBox.Buttons[0].OnClicked = delegate + { + msgBox.Close(); + return true; + }; + } + public static GUIMessageBox AskForConfirmation(string header, string body, Action onConfirm, Action onDeny = null) { string[] buttons = { TextManager.Get("Ok"), TextManager.Get("Cancel") }; @@ -2051,6 +2063,32 @@ namespace Barotrauma return msgBox; } + public static GUIMessageBox PromptTextInput(string header, string body, Action onConfirm) + { + string[] buttons = { TextManager.Get("Ok"), TextManager.Get("Cancel") }; + GUIMessageBox msgBox = new GUIMessageBox(header, string.Empty, buttons, new Vector2(0.2f, 0.175f), minSize: new Point(300, 175)); + GUITextBox textBox = new GUITextBox(new RectTransform(Vector2.One, msgBox.Content.RectTransform), text: body) + { + OverflowClip = true + }; + + // Cancel button + msgBox.Buttons[1].OnClicked = delegate + { + msgBox.Close(); + return true; + }; + + // Ok button + msgBox.Buttons[0].OnClicked = delegate + { + onConfirm.Invoke(textBox.Text); + msgBox.Close(); + return true; + }; + return msgBox; + } + #endregion #region Element positioning @@ -2210,7 +2248,7 @@ namespace Barotrauma if (disallowedAreas == null) { continue; } foreach (Rectangle rect2 in disallowedAreas) { - if (!rect1.Intersects(rect2)) { continue; } + if (!rect1.Intersects(rect2)) { continue; } intersections = true; Point centerDiff = rect1.Center - rect2.Center; @@ -2330,8 +2368,8 @@ namespace Barotrauma }); } - CreateButton(GameMain.GameSession.GameMode is CampaignMode ? "ReturnToServerlobby" : "EndRound", buttonContainer, - verificationTextTag: GameMain.GameSession.GameMode is CampaignMode ? "PauseMenuReturnToServerLobbyVerification" : "EndRoundSubNotAtLevelEnd", + CreateButton(GameMain.GameSession.GameMode is CampaignMode ? "ReturnToServerlobby" : "EndRound", buttonContainer, + verificationTextTag: GameMain.GameSession.GameMode is CampaignMode ? "PauseMenuReturnToServerLobbyVerification" : "EndRoundSubNotAtLevelEnd", action: () => { GameMain.Client?.RequestRoundEnd(save: false); @@ -2448,7 +2486,10 @@ namespace Barotrauma public static void ClearMessages() { - messages.Clear(); + lock (mutex) + { + messages.Clear(); + } } public static bool IsFourByThree() diff --git a/Barotrauma/BarotraumaClient/ClientSource/GUI/GUIButton.cs b/Barotrauma/BarotraumaClient/ClientSource/GUI/GUIButton.cs index 94a503f1e..52b34ece5 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/GUI/GUIButton.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/GUI/GUIButton.cs @@ -219,12 +219,6 @@ namespace Barotrauma GUI.Style.ButtonPulse.Draw(spriteBatch, expandRect, ToolBox.GradientLerp(pulseExpand, Color.White, Color.White, Color.Transparent)); } - - if (UserData is string s && s == "ReadyCheckButton" && ReadyCheck.lastReadyCheck > DateTime.Now) - { - float progress = (ReadyCheck.lastReadyCheck - DateTime.Now).Seconds / 60.0f; - Frame.Color = ToolBox.GradientLerp(progress, Color.White, GUI.Style.Red); - } } protected override void Update(float deltaTime) diff --git a/Barotrauma/BarotraumaClient/ClientSource/GUI/GUIComponent.cs b/Barotrauma/BarotraumaClient/ClientSource/GUI/GUIComponent.cs index f03ad241a..6da7dc016 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/GUI/GUIComponent.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/GUI/GUIComponent.cs @@ -317,7 +317,10 @@ namespace Barotrauma set { selected = value; - Children.ForEach(c => c.Selected = value); + foreach (var child in Children) + { + child.Selected = value; + } } } public virtual ComponentState State @@ -537,7 +540,10 @@ namespace Barotrauma //would be real nice to un-jank this some day ForceUpdate(); ForceUpdate(); - foreach (var child in Children) { child.ForceLayoutRecalculation(); } + foreach (var child in Children) + { + child.ForceLayoutRecalculation(); + } } public void ForceUpdate() => Update((float)Timing.Step); @@ -547,7 +553,10 @@ namespace Barotrauma /// public void UpdateChildren(float deltaTime, bool recursive) { - RectTransform.Children.ForEach(c => c.GUIComponent.UpdateManually(deltaTime, recursive, recursive)); + foreach (var child in RectTransform.Children) + { + child.GUIComponent.UpdateManually(deltaTime, recursive, recursive); + } } #endregion @@ -583,7 +592,10 @@ namespace Barotrauma /// public virtual void DrawChildren(SpriteBatch spriteBatch, bool recursive) { - RectTransform.Children.ForEach(c => c.GUIComponent.DrawManually(spriteBatch, recursive, recursive)); + foreach (RectTransform child in RectTransform.Children) + { + child.GUIComponent.DrawManually(spriteBatch, recursive, recursive); + } } protected Color _currentColor; @@ -764,8 +776,8 @@ namespace Barotrauma { toolTipBlock = new GUITextBlock(new RectTransform(new Point(width, height), null), richTextData, toolTip, font: GUI.SmallFont, wrap: true, style: "GUIToolTip"); toolTipBlock.RectTransform.NonScaledSize = new Point( - (int)(GUI.SmallFont.MeasureString(toolTipBlock.WrappedText).X + padding.X + toolTipBlock.Padding.X + toolTipBlock.Padding.Z), - (int)(GUI.SmallFont.MeasureString(toolTipBlock.WrappedText).Y + padding.Y + toolTipBlock.Padding.Y + toolTipBlock.Padding.W)); + (int)(toolTipBlock.Font.MeasureString(toolTipBlock.WrappedText).X + padding.X + toolTipBlock.Padding.X + toolTipBlock.Padding.Z), + (int)(toolTipBlock.Font.MeasureString(toolTipBlock.WrappedText).Y + padding.Y + toolTipBlock.Padding.Y + toolTipBlock.Padding.W)); toolTipBlock.userData = toolTip; } diff --git a/Barotrauma/BarotraumaClient/ClientSource/GUI/GUIListBox.cs b/Barotrauma/BarotraumaClient/ClientSource/GUI/GUIListBox.cs index 7d932bcc9..ba0faa08c 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/GUI/GUIListBox.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/GUI/GUIListBox.cs @@ -827,6 +827,13 @@ namespace Barotrauma protected override void Update(float deltaTime) { + foreach (GUIComponent child in Children) + { + if (child == ScrollBar || child == Content || child == ContentBackground) { continue; } + + throw new InvalidOperationException($"Children were found in {nameof(GUIListBox)}, Add them to {nameof(GUIListBox)}.{nameof(Content)} instead."); + } + if (!Visible) { return; } UpdateChildrenRect(); @@ -837,7 +844,6 @@ namespace Barotrauma UpdateScrollBarSize(); } - if (FadeElements) { foreach (var (component, _) in childVisible) diff --git a/Barotrauma/BarotraumaClient/ClientSource/GUI/GUIMessageBox.cs b/Barotrauma/BarotraumaClient/ClientSource/GUI/GUIMessageBox.cs index 232c13c6a..62ebe85bb 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/GUI/GUIMessageBox.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/GUI/GUIMessageBox.cs @@ -319,28 +319,29 @@ namespace Barotrauma AbsoluteSpacing = absoluteSpacing.Y, }; - var bottomContainer = new GUIFrame(new RectTransform(new Vector2(0.9f, 0.3f), verticalLayoutGroup.RectTransform), style: null); - - var tickBoxLayoutGroup = new GUILayoutGroup(new RectTransform(new Vector2(0.67f, 1.0f), bottomContainer.RectTransform, anchor: Anchor.CenterLeft), - isHorizontal: true, childAnchor: Anchor.CenterLeft) + var bottomContainer = new GUIFrame(new RectTransform(new Vector2(0.9f, 0.3f), verticalLayoutGroup.RectTransform), style: null) { - Stretch = true, - RelativeSpacing = 0.02f + CanBeFocused = true }; - var dontShowAgainTickBox = new GUITickBox(new RectTransform(new Vector2(0.5f, 1.0f), tickBoxLayoutGroup.RectTransform), + var tickBoxLayoutGroup = new GUILayoutGroup(new RectTransform(new Vector2(0.67f, 1.0f), bottomContainer.RectTransform, anchor: Anchor.CenterLeft)) + { + CanBeFocused = true, + Stretch = true + }; + Vector2 tickBoxRelativeSize = new Vector2(1.0f, 0.5f); + var dontShowAgainTickBox = new GUITickBox(new RectTransform(tickBoxRelativeSize, tickBoxLayoutGroup.RectTransform), TextManager.Get("hintmessagebox.dontshowagain")) { ToolTip = TextManager.Get("hintmessagebox.dontshowagaintooltip"), UserData = "dontshowagain" }; - - //var disableHintsTickBox = new GUITickBox(new RectTransform(new Vector2(0.33f, 1.0f), tickBoxLayoutGroup.RectTransform), - // TextManager.Get("hintmessagebox.disablehints")) - //{ - // ToolTip = TextManager.Get("hintmessagebox.disablehintstooltip"), - // UserData = "disablehints" - //}; + var disableHintsTickBox = new GUITickBox(new RectTransform(tickBoxRelativeSize, tickBoxLayoutGroup.RectTransform), + TextManager.Get("hintmessagebox.disablehints")) + { + ToolTip = TextManager.Get("hintmessagebox.disablehintstooltip"), + UserData = "disablehints" + }; Buttons = new List(1) { @@ -379,12 +380,16 @@ namespace Barotrauma upperContainerHeight = Math.Max(upperContainerHeight, Icon.Rect.Height); height += upperContainerHeight; height += absoluteSpacing.Y; - height += (int)((bottomContainer.RectTransform.RelativeSize.Y / topHorizontalLayoutGroup.RectTransform.RelativeSize.Y) * upperContainerHeight); + int bottomContainerHeight = dontShowAgainTickBox.Rect.Height + disableHintsTickBox.Rect.Height; + height += bottomContainerHeight; height += absoluteSpacing.Y; if (minSize.HasValue) { height = Math.Max(height, minSize.Value.Y); } InnerFrame.RectTransform.NonScaledSize = new Point(InnerFrame.Rect.Width, height); verticalLayoutGroup.RectTransform.NonScaledSize = GetVerticalLayoutGroupSize(); + float upperContainerRelativeHeight = (float)upperContainerHeight / (upperContainerHeight + bottomContainerHeight); + topHorizontalLayoutGroup.RectTransform.RelativeSize = new Vector2(topHorizontalLayoutGroup.RectTransform.RelativeSize.X, upperContainerRelativeHeight); + bottomContainer.RectTransform.RelativeSize = new Vector2(bottomContainer.RectTransform.RelativeSize.X, 1.0f - upperContainerRelativeHeight); verticalLayoutGroup.Recalculate(); topHorizontalLayoutGroup.Recalculate(); Content.Recalculate(); diff --git a/Barotrauma/BarotraumaClient/ClientSource/GUI/GUIScissorComponent.cs b/Barotrauma/BarotraumaClient/ClientSource/GUI/GUIScissorComponent.cs index 07119e38a..3969a3db3 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/GUI/GUIScissorComponent.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/GUI/GUIScissorComponent.cs @@ -29,6 +29,12 @@ namespace Barotrauma ClampChildMouseRects(Content); } + public override void DrawChildren(SpriteBatch spriteBatch, bool recursive) + { + //do nothing (the children have to be drawn in the Draw method after the ScissorRectangle has been set) + return; + } + protected override void Draw(SpriteBatch spriteBatch) { if (!Visible) { return; } diff --git a/Barotrauma/BarotraumaClient/ClientSource/GUI/GUITextBlock.cs b/Barotrauma/BarotraumaClient/ClientSource/GUI/GUITextBlock.cs index 6dc1d5f03..031ec550b 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/GUI/GUITextBlock.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/GUI/GUITextBlock.cs @@ -204,6 +204,12 @@ namespace Barotrauma set { textColor = value; } } + public Color DisabledTextColor + { + get => disabledTextColor; + set => disabledTextColor = value; + } + private Color? hoverTextColor; public Color HoverTextColor { @@ -303,6 +309,10 @@ namespace Barotrauma if (parseRichText) { RichTextData = Barotrauma.RichTextData.GetRichTextData(text, out text); + if (RichTextData != null && RichTextData.Count == 0) + { + RichTextData = null; + } } //if the text is in chinese/korean/japanese and we're not using a CJK-compatible font, @@ -457,7 +467,7 @@ namespace Barotrauma while (size == Vector2.Zero) { try { size = Font.MeasureString(string.IsNullOrEmpty(text) ? " " : text); } - catch { text = text.Substring(0, text.Length - 1); } + catch { text = text.Length > 0 ? text.Substring(0, text.Length - 1) : ""; } } return size; diff --git a/Barotrauma/BarotraumaClient/ClientSource/GUI/GUITextBox.cs b/Barotrauma/BarotraumaClient/ClientSource/GUI/GUITextBox.cs index d09434b5d..147a24e37 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/GUI/GUITextBox.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/GUI/GUITextBox.cs @@ -70,6 +70,8 @@ namespace Barotrauma private Vector2 selectionEndPos; private Vector2 selectionRectSize; + private GUICustomComponent caretAndSelectionRenderer; + private bool mouseHeldInside; private readonly Memento memento = new Memento(); @@ -178,8 +180,7 @@ namespace Barotrauma } set { - base.ToolTip = value; - textBlock.ToolTip = value; + base.ToolTip = textBlock.ToolTip = caretAndSelectionRenderer.ToolTip = value; } } @@ -268,7 +269,7 @@ namespace Barotrauma CaretEnabled = true; caretPosDirty = true; - new GUICustomComponent(new RectTransform(Vector2.One, frame.RectTransform), onDraw: DrawCaretAndSelection); + caretAndSelectionRenderer = new GUICustomComponent(new RectTransform(Vector2.One, frame.RectTransform), onDraw: DrawCaretAndSelection); int clearButtonWidth = 0; if (createClearButton) diff --git a/Barotrauma/BarotraumaClient/ClientSource/GUI/MedicalClinicUI.cs b/Barotrauma/BarotraumaClient/ClientSource/GUI/MedicalClinicUI.cs new file mode 100644 index 000000000..dc6321e84 --- /dev/null +++ b/Barotrauma/BarotraumaClient/ClientSource/GUI/MedicalClinicUI.cs @@ -0,0 +1,1056 @@ +#nullable enable + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Diagnostics.CodeAnalysis; +using System.Linq; +using Barotrauma.Extensions; +using Microsoft.Xna.Framework; + +namespace Barotrauma +{ + [SuppressMessage("ReSharper", "UnusedVariable")] + internal class MedicalClinicUI + { + private enum ElementState + { + Enabled, + Disabled + } + + // Represents a pending affliction in the right side pending heal list + private struct PendingAfflictionElement + { + public readonly GUIComponent UIElement; + public readonly MedicalClinic.NetAffliction Target; + public readonly GUITextBlock Price; + + public PendingAfflictionElement(MedicalClinic.NetAffliction target, GUIComponent element, GUITextBlock price) + { + UIElement = element; + Target = target; + Price = price; + } + } + + // Represents a pending heal on the right side list + private struct PendingHealElement + { + public readonly GUIComponent UIElement; + public MedicalClinic.NetCrewMember Target; + public readonly GUIListBox AfflictionList; + public readonly List Afflictions; + + public PendingHealElement(MedicalClinic.NetCrewMember target, GUIComponent element, GUIListBox afflictionList) + { + UIElement = element; + Target = target; + AfflictionList = afflictionList; + Afflictions = new List(); + } + + public PendingAfflictionElement? FindAfflictionElement(MedicalClinic.NetAffliction target) => Afflictions.FirstOrNull(element => element.Target.Identifier.Equals(target.Identifier, StringComparison.OrdinalIgnoreCase)); + } + + // Represents an affliction on the left side crew entry + private readonly struct AfflictionElement + { + public readonly GUIImage? UIImage; + public readonly GUIComponent UIElement; + public readonly MedicalClinic.NetAffliction Target; + + public AfflictionElement(MedicalClinic.NetAffliction target, GUIComponent element, GUIImage? icon) + { + UIElement = element; + UIImage = icon; + Target = target; + } + } + + // Represent an entry on the left side crew list + private readonly struct CrewElement + { + public readonly GUIComponent UIElement; + public readonly CharacterInfo Target; + public readonly GUIListBox AfflictionList; + public readonly List Afflictions; + public readonly GUIComponent OverflowIndicator; + + public CrewElement(CharacterInfo target, GUIComponent overflowIndicator, GUIComponent element, GUIListBox afflictionList) + { + OverflowIndicator = overflowIndicator; + UIElement = element; + Target = target; + AfflictionList = afflictionList; + Afflictions = new List(); + } + } + + // Represents the right side pending list + private readonly struct PendingHealList + { + public readonly GUIListBox HealList; + public readonly GUITextBlock? ErrorBlock; + public readonly GUITextBlock PriceBlock; + public readonly List HealElements; + public readonly GUIButton HealButton; + + public PendingHealList(GUIListBox healList, GUITextBlock priceBlock, GUIButton healButton, GUITextBlock? errorBlock) + { + HealList = healList; + ErrorBlock = errorBlock; + PriceBlock = priceBlock; + HealButton = healButton; + HealElements = new List(); + } + + public void UpdateElement(PendingHealElement newElement) + { + foreach (PendingHealElement element in HealElements.ToList()) + { + if (element.Target.CharacterEquals(newElement.Target)) + { + HealElements.Remove(element); + HealElements.Add(newElement); + return; + } + } + } + + public PendingHealElement? FindCrewElement(MedicalClinic.NetCrewMember crewMember) => HealElements.FirstOrNull(element => element.Target.CharacterInfoID == crewMember.CharacterInfoID); + } + + // Represents the left side crew list + private readonly struct CrewHealList + { + public readonly GUIComponent Panel; + public readonly GUIListBox HealList; + public readonly List HealElements; + + public CrewHealList(GUIListBox healList, GUIComponent panel) + { + Panel = panel; + HealList = healList; + HealElements = new List(); + } + } + + private readonly struct PopupAffliction + { + public readonly MedicalClinic.NetAffliction Target; + public readonly ImmutableArray ElementsToDisable; + + public PopupAffliction(ImmutableArray elementsToDisable, MedicalClinic.NetAffliction target) + { + Target = target; + ElementsToDisable = elementsToDisable; + } + } + + private readonly struct PopupAfflictionList + { + public readonly MedicalClinic.NetCrewMember Target; + public readonly GUIButton TreatAllButton; + public readonly List Afflictions; + + public PopupAfflictionList(MedicalClinic.NetCrewMember crewMember, GUIButton treatAllButton) + { + Target = crewMember; + TreatAllButton = treatAllButton; + Afflictions = new List(); + } + } + + // private enum SortMode + // { + // Severity + // } + + private readonly MedicalClinic medicalClinic; + private readonly GUIComponent container; + private Point prevResolution; + + private PendingHealList? pendingHealList; + private CrewHealList? crewHealList; + + private GUIFrame? selectedCrewElement; + private PopupAfflictionList? selectedCrewAfflictionList; + private bool isWaitingForServer; + private const float refreshTimerMax = 3f; + private float refreshTimer = 0; + + public MedicalClinicUI(MedicalClinic clinic, GUIComponent parent) + { + medicalClinic = clinic; + container = parent; + clinic.OnUpdate = OnMedicalClinicUpdated; + +#if DEBUG + // creates a button that re-creates the UI + CreateRefreshButton(); + void CreateRefreshButton() + { + new GUIButton(new RectTransform(new Vector2(0.2f, 0.1f), parent.RectTransform, Anchor.TopCenter), "Recreate UI - NOT PRESENT IN RELEASE!") + { + OnClicked = (_, __) => + { + parent.ClearChildren(); + CreateUI(); + CreateRefreshButton(); + RequestLatestPending(); + return true; + } + }; + } +#endif + CreateUI(); + } + + private void OnMedicalClinicUpdated() + { + UpdateCrewPanel(); + UpdatePending(); + UpdatePopupAfflictions(); + } + + private void UpdatePopupAfflictions() + { + if (selectedCrewAfflictionList is { } afflictionList) + { + foreach (PopupAffliction popupAffliction in afflictionList.Afflictions) + { + ToggleElements(ElementState.Enabled, popupAffliction.ElementsToDisable); + if (medicalClinic.IsAfflictionPending(afflictionList.Target, popupAffliction.Target)) + { + ToggleElements(ElementState.Disabled, popupAffliction.ElementsToDisable); + } + } + + afflictionList.TreatAllButton.Enabled = true; + if (afflictionList.Afflictions.All(a => medicalClinic.IsAfflictionPending(afflictionList.Target, a.Target))) + { + afflictionList.TreatAllButton.Enabled = false; + } + } + } + + private void UpdatePending() + { + if (!(pendingHealList is { } healList)) { return; } + + ImmutableArray pendingList = medicalClinic.PendingHeals.ToImmutableArray(); + + // check if there are crew members that are not in the UI + foreach (MedicalClinic.NetCrewMember crewMember in pendingList) + { + if (healList.FindCrewElement(crewMember) is { } element) + { + element.Target = crewMember; + healList.UpdateElement(element); + continue; + } + + CreatePendingHealElement(healList.HealList.Content, crewMember, healList, Array.Empty()); + } + + // check if there are elements that the crew doesn't have + foreach (PendingHealElement element in healList.HealElements.ToList()) + { + if (pendingList.Any(member => member.CharacterEquals(element.Target))) + { + UpdatePendingAfflictions(element); + continue; + } + + healList.HealElements.Remove(element); + healList.HealList.Content.RemoveChild(element.UIElement); + } + + int totalCost = medicalClinic.GetTotalCost(); + healList.PriceBlock.Text = UpgradeStore.FormatCurrency(totalCost); + healList.PriceBlock.TextColor = GUI.Style.Red; + healList.HealButton.Enabled = false; + if (medicalClinic.GetMoney() > totalCost) + { + healList.PriceBlock.TextColor = GUI.Style.TextColor; + if (medicalClinic.PendingHeals.Any()) + { + healList.HealButton.Enabled = true; + } + } + } + + private void UpdatePendingAfflictions(PendingHealElement element) + { + MedicalClinic.NetCrewMember crewMember = element.Target; + foreach (MedicalClinic.NetAffliction affliction in crewMember.Afflictions.ToList()) + { + if (element.FindAfflictionElement(affliction) is { } existingAffliction) + { + existingAffliction.Price.Text = UpgradeStore.FormatCurrency(affliction.Strength); + continue; + } + + CreatePendingAffliction(element.AfflictionList, crewMember, affliction, element); + } + + foreach (PendingAfflictionElement afflictionElement in element.Afflictions.ToList()) + { + if (crewMember.Afflictions.Any(affliction => affliction.AfflictionEquals(afflictionElement.Target))) { continue; } + + element.Afflictions.Remove(afflictionElement); + element.AfflictionList.Content.RemoveChild(afflictionElement.UIElement); + } + } + + private void UpdateCrewPanel() + { + if (!(crewHealList is { } healList)) { return; } + + ImmutableArray crew = MedicalClinic.GetCrewCharacters(); + + // check if there are crew members that are not in the UI + foreach (CharacterInfo info in crew) + { + if (healList.HealElements.Any(element => element.Target == info)) { continue; } + + CreateCrewEntry(healList.HealList.Content, healList, info, healList.Panel); + } + + // check if there are elements that the crew doesn't have + foreach (CrewElement element in healList.HealElements.ToList()) + { + if (crew.Any(info => element.Target == info)) + { + UpdateAfflictionList(element); + continue; + } + + healList.HealElements.Remove(element); + healList.HealList.Content.RemoveChild(element.UIElement); + } + + IEnumerable orderedList = healList.HealElements.OrderBy(element => element.Target.Character?.HealthPercentage ?? 100); + + foreach (CrewElement element in orderedList) + { + element.UIElement.SetAsLastChild(); + } + } + + private static void UpdateAfflictionList(CrewElement healElement) + { + CharacterHealth? health = healElement.Target.Character?.CharacterHealth; + if (health is null) { return; } + + // sum up all the afflictions and their strengths + Dictionary afflictionAndStrength = new Dictionary(); + + foreach (Affliction affliction in health.GetAllAfflictions().Where(a => !a.Prefab.IsBuff && a.Strength > 0)) + { + if (afflictionAndStrength.TryGetValue(affliction.Prefab, out float strength)) + { + strength += affliction.Strength; + afflictionAndStrength[affliction.Prefab] = strength; + continue; + } + + afflictionAndStrength.Add(affliction.Prefab, affliction.Strength); + } + + // hide all the elements because we only want to show 3 later on + foreach (AfflictionElement element in healElement.Afflictions) + { + element.UIElement.Visible = false; + } + + healElement.OverflowIndicator.Visible = false; + + foreach (var (prefab, strength) in afflictionAndStrength) + { + bool found = false; + foreach (AfflictionElement existingElement in healElement.Afflictions) + { + if (!existingElement.Target.AfflictionEquals(prefab)) { continue; } + + if (existingElement.UIImage is { } icon) + { + icon.Color = CharacterHealth.GetAfflictionIconColor(prefab, strength); + } + + found = true; + } + + if (found) { continue; } + + CreateCrewAfflictionIcon(healElement, healElement.AfflictionList.Content, prefab, strength); + } + + foreach (AfflictionElement element in healElement.Afflictions.ToList()) + { + if (afflictionAndStrength.Any(pair => element.Target.AfflictionEquals(pair.Key))) { continue; } + + healElement.AfflictionList.Content.RemoveChild(element.UIElement); + healElement.Afflictions.Remove(element); + } + + for (int i = 0; i < 3 && i < healElement.Afflictions.Count; i++) + { + healElement.Afflictions[i].UIElement.Visible = true; + } + + healElement.OverflowIndicator.Visible = healElement.Afflictions.Count > 3; + healElement.OverflowIndicator.SetAsLastChild(); + } + + private static void CreateCrewAfflictionIcon(CrewElement healElement, GUIComponent parent, AfflictionPrefab prefab, float strength) + { + GUIFrame backgroundFrame = new GUIFrame(new RectTransform(new Vector2(0.25f, 1f), parent.RectTransform), style: null) + { + CanBeFocused = false, + Visible = false + }; + + GUIImage? uiIcon = null; + if (prefab.Icon is { } icon) + { + uiIcon = new GUIImage(new RectTransform(Vector2.One, backgroundFrame.RectTransform), icon, scaleToFit: true) + { + Color = CharacterHealth.GetAfflictionIconColor(prefab, strength) + }; + } + + healElement.Afflictions.Add(new AfflictionElement(new MedicalClinic.NetAffliction { Prefab = prefab }, backgroundFrame, uiIcon)); + } + + private void CreateUI() + { + container.ClearChildren(); + pendingHealList = null; + int panelMaxWidth = (int)(GUI.xScale * (GUI.HorizontalAspectRatio < 1.4f ? 650 : 560)); + + GUIFrame paddedParent = new GUIFrame(new RectTransform(new Vector2(0.95f), container.RectTransform, Anchor.Center), style: null); + + GUILayoutGroup clinicContent = new GUILayoutGroup(new RectTransform(new Vector2(0.45f, 1.0f), paddedParent.RectTransform) + { + MaxSize = new Point(panelMaxWidth, container.Rect.Height) + }) + { + Stretch = true, + RelativeSpacing = 0.01f + }; + + GUILayoutGroup clinicLabelLayout = new GUILayoutGroup(new RectTransform(new Vector2(1f, 0.1f), clinicContent.RectTransform), isHorizontal: true, childAnchor: Anchor.CenterLeft); + GUIImage clinicIcon = new GUIImage(new RectTransform(Vector2.One, clinicLabelLayout.RectTransform, scaleBasis: ScaleBasis.BothHeight), style: "CrewManagementHeaderIcon", scaleToFit: true); + GUITextBlock clinicLabel = new GUITextBlock(new RectTransform(Vector2.One, clinicLabelLayout.RectTransform), TextManager.Get("medicalclinic.medicalclinic"), font: GUI.LargeFont); + + GUIFrame clinicBackground = new GUIFrame(new RectTransform(Vector2.One, clinicContent.RectTransform)); + + CreateLeftSidePanel(clinicBackground); + + GUILayoutGroup crewContent = new GUILayoutGroup(new RectTransform(new Vector2(0.45f, 1.0f), paddedParent.RectTransform, anchor: Anchor.TopRight) + { + MaxSize = new Point(panelMaxWidth, container.Rect.Height) + }) + { + Stretch = true, + RelativeSpacing = 0.01f + }; + + GUILayoutGroup balanceLayout = new GUILayoutGroup(new RectTransform(new Vector2(1f, 0.1f), crewContent.RectTransform)); + GUITextBlock balanceLabel = new GUITextBlock(new RectTransform(new Vector2(1f, 0.5f), balanceLayout.RectTransform), TextManager.Get("campaignstore.balance"), textAlignment: Alignment.BottomRight, font: GUI.Font) + { + AutoScaleVertical = true, + ForceUpperCase = true + }; + + GUITextBlock moneyLabel = new GUITextBlock(new RectTransform(new Vector2(1f, 0.5f), balanceLayout.RectTransform), string.Empty, textAlignment: Alignment.TopRight, font: GUI.Style.SubHeadingFont) + { + TextGetter = () => UpgradeStore.FormatCurrency(medicalClinic.GetMoney()), + AutoScaleVertical = true, + TextScale = 1.1f + }; + + GUIFrame crewBackground = new GUIFrame(new RectTransform(Vector2.One, crewContent.RectTransform)); + + CreateRightSidePanel(crewBackground); + + prevResolution = new Point(GameMain.GraphicsWidth, GameMain.GraphicsHeight); + } + + private void CreateLeftSidePanel(GUIComponent parent) + { + crewHealList = null; + GUILayoutGroup clinicContainer = new GUILayoutGroup(new RectTransform(new Vector2(0.9f, 0.95f), parent.RectTransform, Anchor.Center)) + { + RelativeSpacing = 0.015f, + Stretch = true + }; + + // GUILayoutGroup sortLayout = new GUILayoutGroup(new RectTransform(new Vector2(1f, 0.05f), clinicContainer.RectTransform), isHorizontal: true, childAnchor: Anchor.CenterLeft); + + // new GUITextBlock(new RectTransform(new Vector2(0.2f, 1f), sortLayout.RectTransform), TextManager.Get("campaignstore.sortby"), font: GUI.SubHeadingFont); + + // GUIDropDown sortDropdown = new GUIDropDown(new RectTransform(new Vector2(0.3f, 1f), sortLayout.RectTransform)); + // + // foreach (SortMode mode in Enum.GetValues(typeof(SortMode)).Cast()) + // { + // sortDropdown.AddItem(TextManager.Get($"medicalclinic.sortmode.{mode}"), mode); + // } + // + // sortDropdown.SelectItem(SortMode.Severity); + + GUIListBox crewList = new GUIListBox(new RectTransform(Vector2.One, clinicContainer.RectTransform)); + + crewHealList = new CrewHealList(crewList, parent); + } + + private void CreateCrewEntry(GUIComponent parent, CrewHealList healList, CharacterInfo info, GUIComponent panel) + { + GUIButton crewBackground = new GUIButton(new RectTransform(new Vector2(1f, 0.1f), parent.RectTransform), style: "ListBoxElement"); + + GUILayoutGroup crewLayout = new GUILayoutGroup(new RectTransform(new Vector2(0.95f), crewBackground.RectTransform, Anchor.Center), isHorizontal: true, childAnchor: Anchor.CenterLeft); + + GUILayoutGroup characterBlockLayout = new GUILayoutGroup(new RectTransform(new Vector2(0.45f, 0.9f), crewLayout.RectTransform), isHorizontal: true, Anchor.CenterLeft); + CreateCharacterBlock(characterBlockLayout, info); + + GUIListBox afflictionList = new GUIListBox(new RectTransform(new Vector2(0.45f, 1f), crewLayout.RectTransform), style: null, isHorizontal: true); + + GUILayoutGroup healthLayout = new GUILayoutGroup(new RectTransform(new Vector2(0.1f, 1f), crewLayout.RectTransform), isHorizontal: true, Anchor.Center); + + new GUITextBlock(new RectTransform(Vector2.One, healthLayout.RectTransform), string.Empty, textAlignment: Alignment.Center, font: GUI.SubHeadingFont) + { + TextGetter = () => $"{(int)(info.Character?.HealthPercentage ?? 100f)}%", + TextColor = GUI.Style.Green + }; + + GUITextBlock overflowIndicator = + new GUITextBlock(new RectTransform(new Vector2(0.25f, 1f), afflictionList.Content.RectTransform, scaleBasis: ScaleBasis.BothHeight), text: "+", textAlignment: Alignment.Center, font: GUI.LargeFont) + { + Visible = false, + CanBeFocused = false, + TextColor = GUI.Style.Red + }; + + MedicalClinic.NetCrewMember member = new MedicalClinic.NetCrewMember { CharacterInfo = info, Afflictions = Array.Empty() }; + + crewBackground.OnClicked = (_, __) => + { + SelectCharacter(member, new Vector2(panel.Rect.Right, crewBackground.Rect.Top)); + return true; + }; + + healList.HealElements.Add(new CrewElement(info, overflowIndicator, crewBackground, afflictionList)); + } + + private void CreateRightSidePanel(GUIComponent parent) + { + GUILayoutGroup pendingHealContainer = new GUILayoutGroup(new RectTransform(new Vector2(0.9f, 0.95f), parent.RectTransform, anchor: Anchor.Center)) + { + RelativeSpacing = 0.015f, + Stretch = true + }; + + new GUITextBlock(new RectTransform(new Vector2(1f, 0.05f), pendingHealContainer.RectTransform), TextManager.Get("medicalclinic.pendingheals"), font: GUI.SubHeadingFont); + + GUIFrame healListContainer = new GUIFrame(new RectTransform(new Vector2(1f, 0.9f), pendingHealContainer.RectTransform), style: null); + GUITextBlock? errorBlock = null; + if (!GameMain.IsSingleplayer) + { + errorBlock = new GUITextBlock(new RectTransform(Vector2.One, healListContainer.RectTransform), text: TextManager.Get("pleasewaitupnp"), font: GUI.LargeFont, textAlignment: Alignment.Center); + } + + GUIListBox healList = new GUIListBox(new RectTransform(Vector2.One, healListContainer.RectTransform)) + { + Spacing = GUI.IntScale(8), + Visible = GameMain.IsSingleplayer + }; + + GUILayoutGroup footerLayout = new GUILayoutGroup(new RectTransform(new Vector2(1f, 0.1f), pendingHealContainer.RectTransform)); + + GUILayoutGroup priceLayout = new GUILayoutGroup(new RectTransform(new Vector2(1f, 0.5f), footerLayout.RectTransform), isHorizontal: true); + GUITextBlock priceLabelBlock = new GUITextBlock(new RectTransform(new Vector2(0.5f, 1f), priceLayout.RectTransform), TextManager.Get("campaignstore.total")); + GUITextBlock priceBlock = new GUITextBlock(new RectTransform(new Vector2(0.5f, 1f), priceLayout.RectTransform), UpgradeStore.FormatCurrency(medicalClinic.GetTotalCost()), font: GUI.SubHeadingFont, + textAlignment: Alignment.Right); + + GUILayoutGroup buttonLayout = new GUILayoutGroup(new RectTransform(new Vector2(1f, 0.5f), footerLayout.RectTransform), isHorizontal: true, childAnchor: Anchor.CenterRight); + GUIButton healButton = new GUIButton(new RectTransform(new Vector2(0.33f, 1f), buttonLayout.RectTransform), TextManager.Get("medicalclinic.heal")) + { + Enabled = medicalClinic.PendingHeals.Any() && medicalClinic.GetTotalCost() < medicalClinic.GetMoney(), + OnClicked = (button, _) => + { + button.Enabled = false; + ClosePopup(); + medicalClinic.HealAllButtonAction(request => + { + switch (request.HealResult) + { + case MedicalClinic.HealRequestResult.InsufficientFunds: + GUI.NotifyPrompt(TextManager.Get("medicalclinic.unabletoheal"), TextManager.Get("medicalclinic.insufficientfunds")); + break; + case MedicalClinic.HealRequestResult.Refused: + GUI.NotifyPrompt(TextManager.Get("medicalclinic.unabletoheal"), TextManager.Get("medicalclinic.healrefused")); + break; + } + + button.Enabled = true; + }); + return true; + } + }; + + GUIButton clearButton = new GUIButton(new RectTransform(new Vector2(0.33f, 1f), buttonLayout.RectTransform), TextManager.Get("campaignstore.clearall")) + { + OnClicked = (button, _) => + { + button.Enabled = false; + medicalClinic.ClearAllButtonAction(_ => + { + button.Enabled = true; + }); + return true; + } + }; + + PendingHealList list = new PendingHealList(healList, priceBlock, healButton, errorBlock); + + foreach (MedicalClinic.NetCrewMember heal in GetPendingCharacters()) + { + CreatePendingHealElement(healList.Content, heal, list, heal.Afflictions); + } + + pendingHealList = list; + } + + private void CreatePendingHealElement(GUIComponent parent, MedicalClinic.NetCrewMember crewMember, PendingHealList healList, MedicalClinic.NetAffliction[] afflictions) + { + CharacterInfo? healInfo = crewMember.FindCharacterInfo(MedicalClinic.GetCrewCharacters()); + if (healInfo is null) { return; } + + GUIFrame pendingHealBackground = new GUIFrame(new RectTransform(new Vector2(1f, 0.25f), parent.RectTransform)); + GUILayoutGroup pendingHealLayout = new GUILayoutGroup(new RectTransform(new Vector2(0.95f), pendingHealBackground.RectTransform, Anchor.Center)); + + GUILayoutGroup topHeaderLayout = new GUILayoutGroup(new RectTransform(new Vector2(1f, 0.3f), pendingHealLayout.RectTransform), isHorizontal: true, Anchor.CenterLeft) { Stretch = true }; + + CreateCharacterBlock(topHeaderLayout, healInfo); + + GUILayoutGroup bottomLayout = new GUILayoutGroup(new RectTransform(new Vector2(1f, 0.7f), pendingHealLayout.RectTransform), childAnchor: Anchor.Center); + + GUIListBox pendingAfflictionList = new GUIListBox(new RectTransform(Vector2.One, bottomLayout.RectTransform)) + { + AutoHideScrollBar = false, + ScrollBarVisible = true + }; + + PendingHealElement healElement = new PendingHealElement(crewMember, pendingHealBackground, pendingAfflictionList); + + foreach (MedicalClinic.NetAffliction affliction in afflictions) + { + CreatePendingAffliction(pendingAfflictionList, crewMember, affliction, healElement); + } + + healList.HealElements.Add(healElement); + RecalculateLayouts(pendingHealLayout, topHeaderLayout, bottomLayout); + pendingAfflictionList.ForceUpdate(); + } + + private void CreatePendingAffliction(GUIListBox parent, MedicalClinic.NetCrewMember crewMember, MedicalClinic.NetAffliction affliction, PendingHealElement healElement) + { + GUIFrame backgroundFrame = new GUIFrame(new RectTransform(new Vector2(1f, 0.33f), parent.Content.RectTransform), style: "ListBoxElement"); + GUILayoutGroup parentLayout = new GUILayoutGroup(new RectTransform(Vector2.One, backgroundFrame.RectTransform), isHorizontal: true) { Stretch = true }; + + if (!(affliction.Prefab is { } prefab)) { return; } + + if (prefab.Icon is { } icon) + { + new GUIImage(new RectTransform(Vector2.One, parentLayout.RectTransform, scaleBasis: ScaleBasis.BothHeight), icon, scaleToFit: true) + { + Color = CharacterHealth.GetAfflictionIconColor(prefab, affliction.Strength) + }; + } + + GUILayoutGroup textLayout = new GUILayoutGroup(new RectTransform(Vector2.One, parentLayout.RectTransform), isHorizontal: true); + + string name = prefab.Name; + + GUIFrame textContainer = new GUIFrame(new RectTransform(new Vector2(0.6f, 1f), textLayout.RectTransform), style: null); + GUITextBlock afflictionName = new GUITextBlock(new RectTransform(Vector2.One, textContainer.RectTransform), name, font: GUI.SubHeadingFont); + + GUITextBlock healCost = new GUITextBlock(new RectTransform(new Vector2(0.2f, 1f), textLayout.RectTransform), UpgradeStore.FormatCurrency(affliction.Price), textAlignment: Alignment.Center, font: GUI.LargeFont) + { + Padding = Vector4.Zero + }; + + GUIButton healButton = new GUIButton(new RectTransform(new Vector2(0.2f, 1f), textLayout.RectTransform), style: "CrewManagementRemoveButton") + { + OnClicked = (button, _) => + { + button.Enabled = false; + medicalClinic.RemovePendingButtonAction(crewMember, affliction, _ => + { + button.Enabled = true; + }); + return true; + } + }; + + EnsureTextDoesntOverflow(name, afflictionName, textContainer.Rect, ImmutableArray.Create(textLayout, parentLayout)); + + healElement.Afflictions.Add(new PendingAfflictionElement(affliction, backgroundFrame, healCost)); + + RecalculateLayouts(parentLayout, textLayout); + + parent.ForceUpdate(); + } + + private static void CreateCharacterBlock(GUIComponent parent, CharacterInfo info) + { + new GUICustomComponent(new RectTransform(Vector2.One, parent.RectTransform, scaleBasis: ScaleBasis.BothHeight), (spriteBatch, component) => + { + info.DrawPortrait(spriteBatch, component.Rect.Location.ToVector2(), Vector2.Zero, component.Rect.Width); + }); + + GUILayoutGroup textGroup = new GUILayoutGroup(new RectTransform(new Vector2(1f, 0.8f), parent.RectTransform)); + + string? characterName = info.Name, + jobName = null; + + GUITextBlock? nameBlock = new GUITextBlock(new RectTransform(new Vector2(1f, 0.5f), textGroup.RectTransform), characterName), + jobBlock = null; + + if (info.Job is { Name: { } name, Prefab: { UIColor: var color} } job) + { + jobName = name; + jobBlock = new GUITextBlock(new RectTransform(new Vector2(1f, 0.5f), textGroup.RectTransform), jobName); + nameBlock.TextColor = color; + } + + if (parent is GUILayoutGroup layoutGroup) + { + ImmutableArray layoutGroups = ImmutableArray.Create(layoutGroup, textGroup); + + EnsureTextDoesntOverflow(characterName, nameBlock, parent.Rect, layoutGroups); + + if (jobBlock is null) { return; } + + EnsureTextDoesntOverflow(jobName, jobBlock, parent.Rect, layoutGroups); + } + } + + private void SelectCharacter(MedicalClinic.NetCrewMember crewMember, Vector2 location) + { + CharacterInfo? info = crewMember.FindCharacterInfo(MedicalClinic.GetCrewCharacters()); + if (info is null) { return; } + + if (isWaitingForServer) { return; } + + ClosePopup(); + + GUIFrame mainFrame = new GUIFrame(new RectTransform(new Vector2(0.28f, 0.45f), container.RectTransform) + { + ScreenSpaceOffset = location.ToPoint() + }); + + GUILayoutGroup mainLayout = new GUILayoutGroup(new RectTransform(new Vector2(0.95f), mainFrame.RectTransform, Anchor.Center)) { RelativeSpacing = 0.01f, Stretch = true }; + + if (mainFrame.Rect.Bottom > GameMain.GraphicsHeight) + { + mainFrame.RectTransform.ScreenSpaceOffset = new Point((int)location.X, GameMain.GraphicsHeight - mainFrame.Rect.Height); + } + + GUITextBlock feedbackBlock = new GUITextBlock(new RectTransform(Vector2.One, mainFrame.RectTransform), TextManager.Get("pleasewaitupnp"), textAlignment: Alignment.Center, font: GUI.LargeFont) + { + Visible = true + }; + + GUIButton treatAllButton = new GUIButton(new RectTransform(new Vector2(1f, 0.2f), mainLayout.RectTransform), TextManager.Get("medicalclinic.treatall")) + { + Font = GUI.SubHeadingFont, + Visible = false + }; + + GUIListBox afflictionList = new GUIListBox(new RectTransform(new Vector2(1f, 0.8f), mainLayout.RectTransform)) { Visible = false }; + + PopupAfflictionList popupAfflictionList = new PopupAfflictionList(crewMember, treatAllButton); + selectedCrewElement = mainFrame; + selectedCrewAfflictionList = popupAfflictionList; + + isWaitingForServer = true; + medicalClinic.RequestAfflictions(info, OnReceived); + + void OnReceived(MedicalClinic.AfflictionRequest request) + { + isWaitingForServer = false; + + if (request.Result != MedicalClinic.RequestResult.Success) + { + feedbackBlock.Text = GetErrorText(request.Result); + feedbackBlock.TextColor = GUI.Style.Red; + return; + } + + List allComponents = new List(); + foreach (MedicalClinic.NetAffliction affliction in request.Afflictions) + { + ImmutableArray createdComponents = CreatePopupAffliction(afflictionList.Content, crewMember, affliction); + allComponents.AddRange(createdComponents); + popupAfflictionList.Afflictions.Add(new PopupAffliction(createdComponents, affliction)); + } + + allComponents.Add(treatAllButton); + treatAllButton.OnClicked = (_, __) => + { + ImmutableArray afflictions = request.Afflictions.Where(a => !medicalClinic.IsAfflictionPending(crewMember, a)).ToImmutableArray(); + if (!afflictions.Any()) { return true; } + + AddPending(allComponents.ToImmutableArray(), crewMember, afflictions); + return true; + }; + + afflictionList.Visible = true; + feedbackBlock.Visible = false; + treatAllButton.Visible = true; + UpdatePopupAfflictions(); + } + } + + private ImmutableArray CreatePopupAffliction(GUIComponent parent, MedicalClinic.NetCrewMember crewMember, MedicalClinic.NetAffliction affliction) + { + if (!(affliction.Prefab is { } prefab)) { return ImmutableArray.Empty; } + + GUIFrame backgroundFrame = new GUIFrame(new RectTransform(new Vector2(1f, 0.33f), parent.RectTransform), style: "ListBoxElement"); + GUILayoutGroup mainLayout = new GUILayoutGroup(new RectTransform(new Vector2(0.95f), backgroundFrame.RectTransform, Anchor.Center)) + { + RelativeSpacing = 0.05f + }; + + GUILayoutGroup topLayout = new GUILayoutGroup(new RectTransform(new Vector2(1f, 0.33f), mainLayout.RectTransform), isHorizontal: true) { Stretch = true }; + + Color iconColor = CharacterHealth.GetAfflictionIconColor(prefab, affliction.Strength); + + GUIImage icon = new GUIImage(new RectTransform(Vector2.One, topLayout.RectTransform, scaleBasis: ScaleBasis.BothHeight), prefab.Icon, scaleToFit: true) + { + Color = iconColor, + DisabledColor = iconColor * 0.5f + }; + + GUILayoutGroup topTextLayout = new GUILayoutGroup(new RectTransform(Vector2.One, topLayout.RectTransform), isHorizontal: true); + + GUITextBlock prefabBlock = new GUITextBlock(new RectTransform(new Vector2(0.5f, 1f), topTextLayout.RectTransform), prefab.Name, font: GUI.SubHeadingFont); + + Color textColor = Color.Lerp(GUI.Style.Orange, GUI.Style.Red, (int)affliction.AfflictionSeverity / 2f); + + string vitalityText = TextManager.GetWithVariable("medicalclinic.vitalitydifference", "[amount]", (-affliction.Strength).ToString()); + GUITextBlock vitalityBlock = new GUITextBlock(new RectTransform(new Vector2(0.25f, 1f), topTextLayout.RectTransform), vitalityText, textAlignment: Alignment.Center) + { + TextColor = textColor, + DisabledTextColor = textColor * 0.5f, + Padding = Vector4.Zero, + AutoScaleHorizontal = true + }; + + string severityText = TextManager.Get($"AfflictionStrength{affliction.AfflictionSeverity}"); + GUITextBlock severityBlock = new GUITextBlock(new RectTransform(new Vector2(0.25f, 1f), topTextLayout.RectTransform), severityText, textAlignment: Alignment.Center, font: GUI.SubHeadingFont) + { + TextColor = textColor, + DisabledTextColor = textColor * 0.5f, + Padding = Vector4.Zero, + AutoScaleHorizontal = true + }; + + EnsureTextDoesntOverflow(prefab.Name, prefabBlock, prefabBlock.Rect, ImmutableArray.Create(mainLayout, topLayout, topTextLayout)); + + GUILayoutGroup bottomLayout = new GUILayoutGroup(new RectTransform(new Vector2(1f, 0.66f), mainLayout.RectTransform), isHorizontal: true, childAnchor: Anchor.CenterLeft); + + GUILayoutGroup bottomTextLayout = new GUILayoutGroup(new RectTransform(new Vector2(0.8f, 1f), bottomLayout.RectTransform)); + GUITextBlock descriptionBlock = new GUITextBlock(new RectTransform(new Vector2(1f, 0.5f), bottomTextLayout.RectTransform), ToolBox.LimitString(prefab.Description, GUI.IntScale(64)), wrap: true) + { + ToolTip = prefab.Description + }; + + GUITextBlock priceBlock = new GUITextBlock(new RectTransform(new Vector2(1f, 0.5f), bottomTextLayout.RectTransform), UpgradeStore.FormatCurrency(affliction.Price), font: GUI.LargeFont); + + GUIButton buyButton = new GUIButton(new RectTransform(new Vector2(0.2f, 0.75f), bottomLayout.RectTransform), style: "CrewManagementAddButton"); + + ImmutableArray elementsToDisable = ImmutableArray.Create(prefabBlock, backgroundFrame, icon, vitalityBlock, severityBlock, buyButton, descriptionBlock, priceBlock); + + buyButton.OnClicked = (_, __) => + { + if (!buyButton.Enabled) { return false; } + + AddPending(elementsToDisable, crewMember, ImmutableArray.Create(affliction)); + return true; + }; + + return elementsToDisable; + } + + private void AddPending(ImmutableArray elementsToDisable, MedicalClinic.NetCrewMember crewMember, ImmutableArray afflictions) + { + MedicalClinic.NetCrewMember existingMember; + + if (medicalClinic.PendingHeals.FirstOrNull(m => m.CharacterEquals(crewMember)) is { } foundHeal) + { + existingMember = foundHeal; + } + else + { + MedicalClinic.NetCrewMember newMember = new MedicalClinic.NetCrewMember + { + CharacterInfoID = crewMember.CharacterInfoID, + Afflictions = Array.Empty() + }; + + existingMember = newMember; + } + + foreach (MedicalClinic.NetAffliction affliction in afflictions) + { + if (existingMember.Afflictions.FirstOrNull(a => a.AfflictionEquals(affliction)) != null) + { + return; + } + } + + existingMember.Afflictions = existingMember.Afflictions.Concat(afflictions).ToArray(); + ToggleElements(ElementState.Disabled, elementsToDisable); + medicalClinic.AddPendingButtonAction(existingMember, request => + { + if (request.Result == MedicalClinic.RequestResult.Timeout) + { + ToggleElements(ElementState.Enabled, elementsToDisable); + } + }); + } + + private static void EnsureTextDoesntOverflow(string? text, GUITextBlock textBlock, Rectangle bounds, ImmutableArray? layoutGroups = null) + { + if (string.IsNullOrWhiteSpace(text)) { return; } + + string originalText = text; + + UpdateLayoutGroups(); + + while (textBlock.Rect.X + textBlock.TextSize.X + textBlock.Padding.X + textBlock.Padding.W > bounds.Right) + { + if (string.IsNullOrWhiteSpace(text)) { break; } + + text = text[..^1]; + textBlock.Text = text + "..."; + textBlock.ToolTip = originalText; + + UpdateLayoutGroups(); + } + + void UpdateLayoutGroups() + { + if (layoutGroups is null) { return; } + + foreach (GUILayoutGroup layoutGroup in layoutGroups) + { + layoutGroup.Recalculate(); + } + } + } + + public void RequestLatestPending() + { + UpdateCrewPanel(); + + if (GameMain.IsSingleplayer || !(pendingHealList is { ErrorBlock: { } errorBlock, HealList: { } healList })) { return; } + + errorBlock.Visible = true; + errorBlock.TextColor = GUI.Style.TextColor; + errorBlock.Text = TextManager.Get("pleasewaitupnp"); + healList.Visible = false; + + isWaitingForServer = true; + + medicalClinic.RequestLatestPending(OnReceived); + + void OnReceived(MedicalClinic.PendingRequest request) + { + isWaitingForServer = false; + + if (request.Result != MedicalClinic.RequestResult.Success) + { + errorBlock.Text = GetErrorText(request.Result); + errorBlock.TextColor = GUI.Style.Red; + return; + } + + medicalClinic.PendingHeals.Clear(); + foreach (MedicalClinic.NetCrewMember member in request.CrewMembers) + { + medicalClinic.PendingHeals.Add(member); + } + + OnMedicalClinicUpdated(); + + errorBlock.Visible = false; + healList.Visible = true; + } + } + + private void ClosePopup() + { + if (selectedCrewElement is { } popup) + { + popup.Parent?.RemoveChild(selectedCrewElement); + } + + selectedCrewElement = null; + selectedCrewAfflictionList = null; + } + + private static string GetErrorText(MedicalClinic.RequestResult result) + { + return result switch + { + MedicalClinic.RequestResult.Error => TextManager.Get("error"), + MedicalClinic.RequestResult.Timeout => TextManager.Get("medicalclinic.requesttimeout"), + _ => "What the hell did you just do" // this should never happen + }; + } + + private ImmutableArray GetPendingCharacters() => medicalClinic.PendingHeals.ToImmutableArray(); + + private static void ToggleElements(ElementState state, ImmutableArray elements) + { + foreach (GUIComponent component in elements) + { + component.Enabled = state switch + { + ElementState.Enabled => true, + ElementState.Disabled => false, + _ => throw new ArgumentOutOfRangeException(nameof(state), state, null) + }; + } + } + + private static void RecalculateLayouts(params GUILayoutGroup[] layouts) + { + foreach (GUILayoutGroup layout in layouts) + { + layout.Recalculate(); + } + } + + public void Update(float deltaTime) + { + if (prevResolution.X != GameMain.GraphicsWidth || prevResolution.Y != GameMain.GraphicsHeight) + { + CreateUI(); + } + + refreshTimer += deltaTime; + + if (refreshTimer > refreshTimerMax) + { + UpdateCrewPanel(); + refreshTimer = 0; + } + } + } +} \ No newline at end of file diff --git a/Barotrauma/BarotraumaClient/ClientSource/GUI/RectTransform.cs b/Barotrauma/BarotraumaClient/ClientSource/GUI/RectTransform.cs index 04bbaa485..045547d48 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/GUI/RectTransform.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/GUI/RectTransform.cs @@ -637,7 +637,15 @@ namespace Barotrauma public bool IsParentOf(RectTransform rectT, bool recursive = true) { - return children.Contains(rectT) || (recursive && children.Any(c => c.IsParentOf(rectT))); + if (children.Contains(rectT)) { return true; } + if (recursive) + { + foreach (var child in children) + { + if (child.IsParentOf(rectT)) { return true; } + } + } + return false; } public bool IsChildOf(RectTransform rectT, bool recursive = true) diff --git a/Barotrauma/BarotraumaClient/ClientSource/GUI/SubmarineSelection.cs b/Barotrauma/BarotraumaClient/ClientSource/GUI/SubmarineSelection.cs index 848bfc4b2..1c687913c 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/GUI/SubmarineSelection.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/GUI/SubmarineSelection.cs @@ -414,15 +414,8 @@ namespace Barotrauma } else { - if (GameMain.Client == null) - { - subsToShow.AddRange(SubmarineInfo.SavedSubmarines.Where(s => s.IsCampaignCompatible && !GameMain.GameSession.OwnedSubmarines.Any(os => os.Name == s.Name))); - } - else - { - subsToShow.AddRange(GameMain.NetLobbyScreen.CampaignSubmarines.Where(s => !GameMain.GameSession.OwnedSubmarines.Any(os => os.Name == s.Name))); - } - + subsToShow.AddRange((GameMain.Client is null ? SubmarineInfo.SavedSubmarines : MultiPlayerCampaign.GetCampaignSubs()) + .Where(s => s.IsCampaignCompatible && !GameMain.GameSession.OwnedSubmarines.Any(os => os.Name == s.Name))); subsToShow.Sort((x, y) => x.SubmarineClass.CompareTo(y.SubmarineClass)); } @@ -446,20 +439,11 @@ namespace Barotrauma if (preview == null) { - SubmarineInfo potentialMatch; - - if (GameMain.Client == null) - { - potentialMatch = SubmarineInfo.SavedSubmarines.FirstOrDefault(s => s.EqualityCheckVal == info.EqualityCheckVal); - } - else - { - potentialMatch = GameMain.NetLobbyScreen.CampaignSubmarines.FirstOrDefault(s => s.EqualityCheckVal == info.EqualityCheckVal); - } + SubmarineInfo potentialMatch = SubmarineInfo.SavedSubmarines.FirstOrDefault(s => s.EqualityCheckVal == info.EqualityCheckVal); preview = potentialMatch?.PreviewImage; - // Try from savedsubmarines with name comparison as a backup + // Try name comparison as a backup if (preview == null) { potentialMatch = SubmarineInfo.SavedSubmarines.FirstOrDefault(s => s.Name == info.Name); diff --git a/Barotrauma/BarotraumaClient/ClientSource/GUI/TabMenu.cs b/Barotrauma/BarotraumaClient/ClientSource/GUI/TabMenu.cs index a5554ebf2..22f06e9cc 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/GUI/TabMenu.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/GUI/TabMenu.cs @@ -1543,30 +1543,12 @@ namespace Barotrauma GUITextBlock.AutoScaleAndNormalize(skillNames); } - private bool HasUnlockedAllTalents(Character controlledCharacter) - { - if (TalentTree.JobTalentTrees.TryGetValue(controlledCharacter.Info.Job.Prefab.Identifier, out TalentTree talentTree)) - { - foreach (TalentSubTree talentSubTree in talentTree.TalentSubTrees) - { - foreach (TalentOption talentOption in talentSubTree.TalentOptionStages) - { - if (talentOption.Talents.None(t => controlledCharacter.HasTalent(t.Identifier))) - { - return false; - } - } - } - } - return true; - } - private void UpdateTalentButtons() { Character controlledCharacter = Character.Controlled; if (controlledCharacter?.Info == null) { return; } - bool unlockedAllTalents = HasUnlockedAllTalents(controlledCharacter); + bool unlockedAllTalents = controlledCharacter.HasUnlockedAllTalents(); if (unlockedAllTalents) { diff --git a/Barotrauma/BarotraumaClient/ClientSource/GUI/UpgradeStore.cs b/Barotrauma/BarotraumaClient/ClientSource/GUI/UpgradeStore.cs index 1994a8d59..67dcfc6c1 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/GUI/UpgradeStore.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/GUI/UpgradeStore.cs @@ -16,7 +16,6 @@ using Microsoft.Xna.Framework.Input; namespace Barotrauma { - internal class UpgradeStore { public readonly struct CategoryData @@ -1688,7 +1687,7 @@ namespace Barotrauma private bool HasPermission => campaignUI.Campaign.AllowedToManageCampaign(); - private static string FormatCurrency(int money, bool format = true) + public static string FormatCurrency(int money, bool format = true) { return TextManager.GetWithVariable("CurrencyFormat", "[credits]", format ? string.Format(CultureInfo.InvariantCulture, "{0:N0}", money) : money.ToString()); } diff --git a/Barotrauma/BarotraumaClient/ClientSource/GameMain.cs b/Barotrauma/BarotraumaClient/ClientSource/GameMain.cs index 711834cf9..15f703b8f 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/GameMain.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/GameMain.cs @@ -437,8 +437,8 @@ namespace Barotrauma TaskPool.Add("AutoUpdateWorkshopItemsAsync", SteamManager.AutoUpdateWorkshopItemsAsync(), (task) => { - bool result = ((Task)task).Result; - + if (!task.TryGetResult(out bool result)) { return; } + Config.WaitingForAutoUpdate = false; }); @@ -756,7 +756,10 @@ namespace Barotrauma } #if DEBUG - CancelQuickStart |= PlayerInput.KeyDown(Keys.LeftShift); + if (PlayerInput.KeyHit(Keys.LeftShift)) + { + CancelQuickStart = !CancelQuickStart; + } if (TitleScreen.LoadState >= 100.0f && !TitleScreen.PlayingSplashScreen && (Config.AutomaticQuickStartEnabled || Config.AutomaticCampaignLoadEnabled || Config.TestScreenEnabled) && FirstLoad && !CancelQuickStart) { diff --git a/Barotrauma/BarotraumaClient/ClientSource/GameSession/CrewManager.cs b/Barotrauma/BarotraumaClient/ClientSource/GameSession/CrewManager.cs index 43f30d3b4..8b0534b26 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/GameSession/CrewManager.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/GameSession/CrewManager.cs @@ -718,7 +718,7 @@ namespace Barotrauma /// Sets the character's current order (if it's close enough to receive messages from orderGiver) and /// displays the order in the crew UI /// - public void SetCharacterOrder(Character character, Order order, string option, int priority, Character orderGiver, Hull targetHull = null) + public void SetCharacterOrder(Character character, Order order, string option, int priority, Character orderGiver, Hull targetHull = null, bool isNewOrder = true) { if (order != null && order.TargetAllCharacters) { @@ -768,7 +768,7 @@ namespace Barotrauma if (IsSinglePlayer) { - orderGiver.Speak(order.GetChatMessage("", hull?.DisplayName, givingOrderToSelf: character == orderGiver), ChatMessageType.Order); + orderGiver.Speak(order.GetChatMessage("", hull?.DisplayName, givingOrderToSelf: character == orderGiver, isNewOrder: isNewOrder), ChatMessageType.Order); } else { @@ -784,7 +784,7 @@ namespace Barotrauma if (IsSinglePlayer) { character.SetOrder(order, option, priority, orderGiver, speak: orderGiver != character); - string message = order?.GetChatMessage(character.Name, orderGiver?.CurrentHull?.DisplayName, givingOrderToSelf: character == orderGiver, orderOption: option, priority: priority); + string message = order?.GetChatMessage(character.Name, orderGiver?.CurrentHull?.DisplayName, givingOrderToSelf: character == orderGiver, orderOption: option, isNewOrder: isNewOrder); orderGiver?.Speak(message); } else if (orderGiver != null) @@ -1071,7 +1071,7 @@ namespace Barotrauma var priority = Math.Max(CharacterInfo.HighestManualOrderPriority - orderList.Content.GetChildIndex(orderComponent), 1); if (orderInfo.ManualPriority == priority) { return; } var character = (Character)orderList.UserData; - SetCharacterOrder(character, orderInfo.Order, orderInfo.OrderOption, priority, Character.Controlled); + SetCharacterOrder(character, orderInfo.Order, orderInfo.OrderOption, priority, Character.Controlled, isNewOrder: false); } private string CreateOrderTooltip(Order orderPrefab, string option, Entity targetEntity) @@ -2582,15 +2582,12 @@ namespace Barotrauma { contextualOrders.Remove(pumpOrderInfo); } - if (contextualOrders.None()) + orderIdentifier = "cleanupitems"; + if (contextualOrders.None(info => info.Order.Identifier.Equals(orderIdentifier))) { - orderIdentifier = "cleanupitems"; - if (contextualOrders.None(info => info.Order.Identifier.Equals(orderIdentifier))) + if (AIObjectiveCleanupItems.IsValidTarget(itemContext, Character.Controlled, checkInventory: false) || AIObjectiveCleanupItems.IsValidContainer(itemContext, Character.Controlled)) { - if (AIObjectiveCleanupItems.IsValidTarget(itemContext, Character.Controlled, checkInventory: false) || AIObjectiveCleanupItems.IsValidContainer(itemContext, Character.Controlled)) - { - contextualOrders.Add(new OrderInfo(new Order(Order.GetPrefab(orderIdentifier), itemContext, targetItem: null, Character.Controlled), null)); - } + contextualOrders.Add(new OrderInfo(new Order(Order.GetPrefab(orderIdentifier), itemContext, targetItem: null, Character.Controlled), null)); } } AddIgnoreOrder(itemContext); @@ -3523,16 +3520,6 @@ namespace Barotrauma InitRound(); } - public void EndRound() - { - //remove characterinfos whose characters have been removed or killed - characterInfos.RemoveAll(c => c.Character == null || c.Character.Removed || c.CauseOfDeath != null); - - characters.Clear(); - crewList.ClearChildren(); - GUIContextMenu.CurrentContextMenu = null; - } - public void Reset() { characters.Clear(); diff --git a/Barotrauma/BarotraumaClient/ClientSource/GameSession/GameModes/CampaignMode.cs b/Barotrauma/BarotraumaClient/ClientSource/GameSession/GameModes/CampaignMode.cs index 95d8d567e..32be3708e 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/GameSession/GameModes/CampaignMode.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/GameSession/GameModes/CampaignMode.cs @@ -242,6 +242,11 @@ namespace Barotrauma { ReadyCheckButton.RectTransform.ScreenSpaceOffset = endRoundButton.RectTransform.ScreenSpaceOffset; ReadyCheckButton.DrawManually(spriteBatch); + if (ReadyCheck.ReadyCheckCooldown > DateTime.Now) + { + float progress = (ReadyCheck.ReadyCheckCooldown - DateTime.Now).Seconds / 60.0f; + ReadyCheckButton.Color = ToolBox.GradientLerp(progress, Color.White, GUI.Style.Red); + } } } @@ -290,6 +295,9 @@ namespace Barotrauma case InteractionType.Crew when GameMain.NetworkMember != null: CampaignUI.CrewManagement.SendCrewState(false); goto default; + case InteractionType.MedicalClinic: + CampaignUI.MedicalClinic.RequestLatestPending(); + goto default; default: ShowCampaignUI = true; CampaignUI.SelectTab(npc.CampaignInteractionType); @@ -319,6 +327,8 @@ namespace Barotrauma { base.Update(deltaTime); + MedicalClinic?.Update(deltaTime); + if (PlayerInput.KeyHit(Microsoft.Xna.Framework.Input.Keys.Escape)) { GUIMessageBox.MessageBoxes.RemoveAll(mb => mb.UserData is RoundSummary); diff --git a/Barotrauma/BarotraumaClient/ClientSource/GameSession/GameSession.cs b/Barotrauma/BarotraumaClient/ClientSource/GameSession/GameSession.cs index 007bef266..113f7e5c3 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/GameSession/GameSession.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/GameSession/GameSession.cs @@ -172,7 +172,7 @@ namespace Barotrauma } else { - indicator.Visible = Character.Controlled.Info.GetAvailableTalentPoints() > 0; + indicator.Visible = Character.Controlled.Info.GetAvailableTalentPoints() > 0 && !Character.Controlled.HasUnlockedAllTalents(); } } } diff --git a/Barotrauma/BarotraumaClient/ClientSource/GameSession/MedicalClinic.cs b/Barotrauma/BarotraumaClient/ClientSource/GameSession/MedicalClinic.cs new file mode 100644 index 000000000..c99349d18 --- /dev/null +++ b/Barotrauma/BarotraumaClient/ClientSource/GameSession/MedicalClinic.cs @@ -0,0 +1,386 @@ +#nullable enable + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Linq; +using Barotrauma.Extensions; +using Barotrauma.Networking; + +namespace Barotrauma +{ + internal partial class MedicalClinic + { + public enum RequestResult + { + Undecided, + Success, + Error, + Timeout + } + + public readonly struct RequestAction + { + public readonly Action Callback; + public readonly DateTimeOffset Timeout; + + public RequestAction(Action callback, DateTimeOffset timeout) + { + Callback = callback; + Timeout = timeout; + } + } + + public readonly struct AfflictionRequest + { + public readonly RequestResult Result; + public readonly ImmutableArray Afflictions; + + public AfflictionRequest(RequestResult result, ImmutableArray afflictions) + { + Result = result; + Afflictions = afflictions; + } + } + + public readonly struct PendingRequest + { + public readonly RequestResult Result; + public readonly ImmutableArray CrewMembers; + + public PendingRequest(RequestResult result, ImmutableArray crewMembers) + { + Result = result; + CrewMembers = crewMembers; + } + } + + public readonly struct CallbackOnlyRequest + { + public readonly RequestResult Result; + + public CallbackOnlyRequest(RequestResult result) + { + Result = result; + } + } + + public readonly struct HealRequest + { + public readonly RequestResult Result; + public readonly HealRequestResult HealResult; + + public HealRequest(RequestResult result, HealRequestResult healResult) + { + Result = result; + HealResult = healResult; + } + } + + private readonly List> afflictionRequests = new List>(); + private readonly List> pendingHealRequests = new List>(); + private readonly List> clearAllRequests = new List>(); + private readonly List> healAllRequests = new List>(); + private readonly List> addRequests = new List>(); + private readonly List> removeRequests = new List>(); + + public void RequestAfflictions(CharacterInfo info, Action onReceived) + { + if (GameMain.IsSingleplayer) + { +#if DEBUG && LINUX + if (Screen.Selected is TestScreen) + { + onReceived.Invoke(new AfflictionRequest(RequestResult.Success, TestAfflictions.ToImmutableArray())); + return; + } +#endif + + if (!(info is { Character: { CharacterHealth: { } health } })) + { + onReceived.Invoke(new AfflictionRequest(RequestResult.Error, ImmutableArray.Empty)); + return; + } + + ImmutableArray pendingAfflictions = GetAllAfflictions(health).ToImmutableArray(); + onReceived.Invoke(new AfflictionRequest(RequestResult.Success, pendingAfflictions)); + return; + } + + afflictionRequests.Add(new RequestAction(onReceived, GetTimeout())); + SendAfflictionRequest(info); + } + + public void RequestLatestPending(Action onReceived) + { + // no need to worry about syncing when there's only one pair of eyes capable of looking at the UI + if (GameMain.IsSingleplayer) { return; } + + pendingHealRequests.Add(new RequestAction(onReceived, GetTimeout())); + SendPendingRequest(); + } + + public void Update(float deltaTime) + { + DateTimeOffset now = DateTimeOffset.Now; + UpdateQueue(afflictionRequests, now, onTimeout: callback => { callback(new AfflictionRequest(RequestResult.Timeout, ImmutableArray.Empty)); }); + UpdateQueue(pendingHealRequests, now, onTimeout: callback => { callback(new PendingRequest(RequestResult.Timeout, ImmutableArray.Empty)); }); + UpdateQueue(healAllRequests, now, onTimeout: callback => { callback(new HealRequest(RequestResult.Timeout, HealRequestResult.Unknown)); }); + UpdateQueue(clearAllRequests, now, onTimeout: CallbackOnlyTimeout); + UpdateQueue(addRequests, now, onTimeout: CallbackOnlyTimeout); + UpdateQueue(removeRequests, now, onTimeout: CallbackOnlyTimeout); + + void CallbackOnlyTimeout(Action callback) { callback(new CallbackOnlyRequest(RequestResult.Timeout)); } + } + + public bool IsAfflictionPending(NetCrewMember character, NetAffliction affliction) + { + foreach (NetCrewMember crewMember in PendingHeals) + { + if (!crewMember.CharacterEquals(character)) { continue; } + + return crewMember.Afflictions.Any(a => a.AfflictionEquals(affliction)); + } + + return false; + } + + private static bool TryDequeue(List> requestQueue, out Action result) + { + RequestAction? first = requestQueue.FirstOrNull(); + if (!(first is { } action)) + { + result = _ => { }; + return false; + } + + requestQueue.Remove(action); + result = action.Callback; + return true; + } + + private static void UpdateQueue(List> requestQueue, DateTimeOffset now, Action> onTimeout) + { + HashSet>? removals = null; + foreach (RequestAction action in requestQueue) + { + if (action.Timeout < now) + { + onTimeout.Invoke(action.Callback); + + removals ??= new HashSet>(); + removals.Add(action); + } + } + + if (removals is null) { return; } + + foreach (RequestAction action in removals) + { + requestQueue.Remove(action); + } + } + + // if you have more than 5000 ping there are probably more important things to worry about but hey just in case + private static DateTimeOffset GetTimeout() => DateTimeOffset.Now.AddSeconds(5).AddMilliseconds(GetPing()); + + private static int GetPing() + { + if (GameMain.IsSingleplayer || !(GameMain.Client?.Name is { } ownName) || !(GameMain.NetworkMember?.ConnectedClients is { } clients)) { return 0; } + + return (from client in clients where client.Name == ownName select client.Ping).FirstOrDefault(); + } + + public void HealAllButtonAction(Action onReceived) + { + if (GameMain.IsSingleplayer) + { + HealRequestResult result = HealAllPending(); + onReceived(new HealRequest(RequestResult.Success, HealAllPending())); + if (result == HealRequestResult.Success) + { + OnUpdate?.Invoke(); + } + + return; + } + + healAllRequests.Add(new RequestAction(onReceived, GetTimeout())); + ClientSend(null, NetworkHeader.HEAL_PENDING, DeliveryMethod.Reliable); + } + + public void ClearAllButtonAction(Action onReceived) + { + if (GameMain.IsSingleplayer) + { + ClearPendingHeals(); + onReceived(new CallbackOnlyRequest(RequestResult.Success)); + OnUpdate?.Invoke(); + return; + } + + clearAllRequests.Add(new RequestAction(onReceived, GetTimeout())); + ClientSend(null, NetworkHeader.CLEAR_PENDING, DeliveryMethod.Reliable); + } + + private void ClearRequstReceived() + { + ClearPendingHeals(); + if (TryDequeue(clearAllRequests, out var callback)) + { + callback(new CallbackOnlyRequest(RequestResult.Success)); + } + OnUpdate?.Invoke(); + } + + private void HealRequestReceived(IReadMessage inc) + { + NetHealRequest request = INetSerializableStruct.Read(inc); + if (request.Result == HealRequestResult.Success) + { + HealAllPending(force: true); + } + + if (TryDequeue(healAllRequests, out var callback)) + { + callback(new HealRequest(RequestResult.Success, request.Result)); + } + + OnUpdate?.Invoke(); + } + + public void AddPendingButtonAction(NetCrewMember crewMember, Action onReceived) + { + if (GameMain.IsSingleplayer) + { + InsertPendingCrewMember(crewMember); + onReceived(new CallbackOnlyRequest(RequestResult.Success)); + OnUpdate?.Invoke(); + return; + } + + addRequests.Add(new RequestAction(onReceived, GetTimeout())); + ClientSend(crewMember, NetworkHeader.ADD_PENDING, DeliveryMethod.Reliable); + } + + public void RemovePendingButtonAction(NetCrewMember crewMember, NetAffliction affliction, Action onReceived) + { + if (GameMain.IsSingleplayer) + { + RemovePendingAffliction(crewMember, affliction); + onReceived(new CallbackOnlyRequest(RequestResult.Success)); + OnUpdate?.Invoke(); + return; + } + + INetSerializableStruct removedAffliction = new NetRemovedAffliction + { + CrewMember = crewMember, + Affliction = affliction + }; + + removeRequests.Add(new RequestAction(onReceived, GetTimeout())); + ClientSend(removedAffliction, NetworkHeader.REMOVE_PENDING, DeliveryMethod.Reliable); + } + + private void NewAdditonReceived(IReadMessage inc, MessageFlag flag) + { + NetCrewMember crewMember = INetSerializableStruct.Read(inc); + InsertPendingCrewMember(crewMember); + if (flag == MessageFlag.Response && TryDequeue(addRequests, out var callback)) + { + callback(new CallbackOnlyRequest(RequestResult.Success)); + } + OnUpdate?.Invoke(); + } + + private void NewRemovalReceived(IReadMessage inc, MessageFlag flag) + { + NetRemovedAffliction removed = INetSerializableStruct.Read(inc); + RemovePendingAffliction(removed.CrewMember, removed.Affliction); + if (flag == MessageFlag.Response && TryDequeue(removeRequests, out var callback)) + { + callback(new CallbackOnlyRequest(RequestResult.Success)); + } + OnUpdate?.Invoke(); + } + + private static void SendAfflictionRequest(CharacterInfo info) + { + INetSerializableStruct crewMember = new NetCrewMember + { + CharacterInfo = info, + Afflictions = Array.Empty() + }; + + ClientSend(crewMember, NetworkHeader.REQUEST_AFFLICTIONS, DeliveryMethod.Unreliable); + } + + private static void SendPendingRequest() + { + ClientSend(null, NetworkHeader.REQUEST_PENDING, DeliveryMethod.Reliable); + } + + private void AfflictionRequestReceived(IReadMessage inc) + { + NetCrewMember crewMember = INetSerializableStruct.Read(inc); + if (TryDequeue(afflictionRequests, out var callback)) + { + RequestResult result = crewMember.CharacterInfoID == 0 ? RequestResult.Error : RequestResult.Success; + callback(new AfflictionRequest(result, crewMember.Afflictions.ToImmutableArray())); + } + } + + private void PendingRequestReceived(IReadMessage inc) + { + NetPendingCrew pendingCrew = INetSerializableStruct.Read(inc); + if (TryDequeue(pendingHealRequests, out var callback)) + { + callback(new PendingRequest(RequestResult.Success, pendingCrew.CrewMembers.ToImmutableArray())); + } + } + + private static IWriteMessage StartSending() + { + IWriteMessage writeMessage = new WriteOnlyMessage(); + writeMessage.Write((byte)ClientPacketHeader.MEDICAL); + return writeMessage; + } + + private static void ClientSend(INetSerializableStruct? netStruct, NetworkHeader header, DeliveryMethod deliveryMethod) + { + IWriteMessage msg = StartSending(); + msg.Write((byte)header); + netStruct?.Write(msg); + GameMain.Client.ClientPeer?.Send(msg, deliveryMethod); + } + + public void ClientRead(IReadMessage inc) + { + NetworkHeader header = (NetworkHeader)inc.ReadByte(); + MessageFlag flag = (MessageFlag)inc.ReadByte(); + + switch (header) + { + case NetworkHeader.REQUEST_AFFLICTIONS: + AfflictionRequestReceived(inc); + break; + case NetworkHeader.REQUEST_PENDING: + PendingRequestReceived(inc); + break; + case NetworkHeader.ADD_PENDING: + NewAdditonReceived(inc, flag); + break; + case NetworkHeader.REMOVE_PENDING: + NewRemovalReceived(inc, flag); + break; + case NetworkHeader.HEAL_PENDING: + HealRequestReceived(inc); + break; + case NetworkHeader.CLEAR_PENDING: + ClearRequstReceived(); + break; + } + } + } +} \ No newline at end of file diff --git a/Barotrauma/BarotraumaClient/ClientSource/GameSession/ReadyCheck.cs b/Barotrauma/BarotraumaClient/ClientSource/GameSession/ReadyCheck.cs index bb01da050..e6d7114bc 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/GameSession/ReadyCheck.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/GameSession/ReadyCheck.cs @@ -31,7 +31,7 @@ namespace Barotrauma private GUIMessageBox? msgBox; private GUIMessageBox? resultsBox; - public static DateTime lastReadyCheck = DateTime.MinValue; + public static DateTime ReadyCheckCooldown = DateTime.MinValue; public static bool IsReadyCheck(GUIComponent? msgBox) => msgBox?.UserData as string == PromptData || msgBox?.UserData as string == ResultData; @@ -273,10 +273,10 @@ namespace Barotrauma public static void CreateReadyCheck() { - if (lastReadyCheck < DateTime.Now) + if (ReadyCheckCooldown < DateTime.Now) { #if !DEBUG - lastReadyCheck = DateTime.Now.AddMinutes(1); + ReadyCheckCooldown = DateTime.Now.AddMinutes(1); #endif IWriteMessage msg = new WriteOnlyMessage(); msg.Write((byte) ClientPacketHeader.READY_CHECK); @@ -285,7 +285,7 @@ namespace Barotrauma return; } - GUIMessageBox msgBox = new GUIMessageBox(readyCheckHeader, readyCheckPleaseWait((lastReadyCheck - DateTime.Now).Seconds), new[] { closeButton }); + GUIMessageBox msgBox = new GUIMessageBox(readyCheckHeader, readyCheckPleaseWait((ReadyCheckCooldown - DateTime.Now).Seconds), new[] { closeButton }); msgBox.Buttons[0].OnClicked = delegate { msgBox.Close(); diff --git a/Barotrauma/BarotraumaClient/ClientSource/GameSettings.cs b/Barotrauma/BarotraumaClient/ClientSource/GameSettings.cs index 251487afb..a71217c8d 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/GameSettings.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/GameSettings.cs @@ -524,6 +524,7 @@ namespace Barotrauma return true; }; +#if !OSX var statisticsTickBox = new GUITickBox(new RectTransform(new Vector2(1.0f, 0.045f), leftPanel.RectTransform), TextManager.Get("statisticsconsenttickbox")) { OnSelected = (GUITickBox tickBox) => @@ -562,6 +563,8 @@ namespace Barotrauma statisticsTickBox.OnSelected = prevHandler; statisticsTickBox.Enabled = GameAnalyticsManager.UserConsented != GameAnalyticsManager.Consent.Error; }); +#endif + // right panel -------------------------------------- diff --git a/Barotrauma/BarotraumaClient/ClientSource/Items/CharacterInventory.cs b/Barotrauma/BarotraumaClient/ClientSource/Items/CharacterInventory.cs index 0fe573f07..f7bc9048c 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Items/CharacterInventory.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Items/CharacterInventory.cs @@ -504,6 +504,13 @@ namespace Barotrauma { HUDLayoutSettings.InventoryTopY = visualSlots[0].EquipButtonRect.Y - (int)(15 * GUI.Scale); } + else + { + for (int i = 0; i < capacity; i++) + { + visualSlots[i].DrawOffset = Vector2.Zero; + } + } } protected override void ControlInput(Camera cam) diff --git a/Barotrauma/BarotraumaClient/ClientSource/Items/Components/EntitySpawnerComponent.cs b/Barotrauma/BarotraumaClient/ClientSource/Items/Components/EntitySpawnerComponent.cs index cd8d21dcf..97c661961 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Items/Components/EntitySpawnerComponent.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Items/Components/EntitySpawnerComponent.cs @@ -28,8 +28,8 @@ namespace Barotrauma.Items.Components } case AreaShape.Circle: Vector2 center = item.WorldPosition; - center.Y = -center.Y; center += SpawnAreaOffset; + center.Y = -center.Y; spriteBatch.DrawCircle(center, SpawnAreaRadius, 32, GUI.Style.Red, thickness: 4f); if (MaximumAmountRangePadding > 0f) @@ -51,8 +51,8 @@ namespace Barotrauma.Items.Components } case AreaShape.Circle: Vector2 center = item.WorldPosition; - center.Y = -center.Y; center += CrewAreaOffset; + center.Y = -center.Y; spriteBatch.DrawCircle(center, CrewAreaRadius, 32, GUI.Style.Green); break; } diff --git a/Barotrauma/BarotraumaClient/ClientSource/Items/Components/ItemComponent.cs b/Barotrauma/BarotraumaClient/ClientSource/Items/Components/ItemComponent.cs index f42e06aa0..0e4b9b743 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Items/Components/ItemComponent.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Items/Components/ItemComponent.cs @@ -390,10 +390,10 @@ namespace Barotrauma.Items.Components if (SerializableProperties.TryGetValue(sound.VolumeProperty, out SerializableProperty property)) { - float newVolume = 0.0f; + float newVolume; try { - newVolume = (float)property.GetValue(this); + newVolume = property.GetFloatValue(this); } catch { diff --git a/Barotrauma/BarotraumaClient/ClientSource/Items/Components/LightComponent.cs b/Barotrauma/BarotraumaClient/ClientSource/Items/Components/LightComponent.cs index ec2074a32..c2a3d7957 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Items/Components/LightComponent.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Items/Components/LightComponent.cs @@ -40,7 +40,7 @@ namespace Barotrauma.Items.Components } } - partial void SetLightSourceTransform() + partial void SetLightSourceTransformProjSpecific() { if (ParentBody != null) { diff --git a/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Machines/Controller.cs b/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Machines/Controller.cs index 994deb666..0eb2cbf58 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Machines/Controller.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Machines/Controller.cs @@ -6,21 +6,23 @@ namespace Barotrauma.Items.Components { partial class Controller : ItemComponent { + private bool chatBoxOriginalState; + private bool isHUDsHidden; + public override void DrawHUD(SpriteBatch spriteBatch, Character character) { if (focusTarget != null && character.ViewTarget == focusTarget) { foreach (ItemComponent ic in focusTarget.Components) { - ic.DrawHUD(spriteBatch, character); + if (ic.ShouldDrawHUD(character)) + { + ic.DrawHUD(spriteBatch, character); + } } } } - private bool crewAreaOriginalState; - private bool chatBoxOriginalState; - private bool isHUDsHidden; - partial void HideHUDs(bool value) { if (isHUDsHidden == value) { return; } diff --git a/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Machines/Fabricator.cs b/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Machines/Fabricator.cs index e839046dc..57217ed9f 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Machines/Fabricator.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Machines/Fabricator.cs @@ -302,6 +302,12 @@ namespace Barotrauma.Items.Components } HideEmptyItemListCategories(); + + if (selectedItem != null) + { + //reselect to recreate the info based on the new user's skills + SelectItem(character, selectedItem); + } } private void DrawInputOverLay(SpriteBatch spriteBatch, GUICustomComponent overlayComponent) @@ -343,13 +349,14 @@ namespace Barotrauma.Items.Components foreach (Item it in availableItems) { if (it.ParentInventory == inputContainer.Inventory) { continue; } - var rootContainer = it.GetRootContainer(); - if (rootContainer?.OwnInventory?.visualSlots == null) { continue; } - int availableSlotIndex = rootContainer.OwnInventory.FindIndex(it.Container == rootContainer ? it : it.Container); + var rootInventoryOwner = it.GetRootInventoryOwner(); + Inventory rootInventory = (rootInventoryOwner as Item)?.OwnInventory as Inventory ?? (rootInventoryOwner as Character)?.Inventory; + if (rootInventory?.visualSlots == null) { continue; } + int availableSlotIndex = rootInventory.FindIndex((it.Container != rootInventoryOwner ? it.Container : it) ?? it); if (availableSlotIndex < 0) { continue; } - if (rootContainer.OwnInventory.visualSlots[availableSlotIndex].HighlightTimer <= 0.0f) + if (rootInventory.visualSlots[availableSlotIndex].HighlightTimer <= 0.0f) { - rootContainer.OwnInventory.visualSlots[availableSlotIndex].ShowBorderHighlight(GUI.Style.Green, 0.5f, 0.5f, 0.2f); + rootInventory.visualSlots[availableSlotIndex].ShowBorderHighlight(GUI.Style.Green, 0.5f, 0.5f, 0.2f); if (slotIndex < inputContainer.Capacity) { inputContainer.Inventory.visualSlots[slotIndex].ShowBorderHighlight(GUI.Style.Green, 0.5f, 0.5f, 0.2f); @@ -406,9 +413,16 @@ namespace Barotrauma.Items.Components { toolTipText += " " + (int)Math.Round(requiredItem.MinCondition * 100) + "%"; } - else if(requiredItem.MaxCondition < 1.0f) + else if (requiredItem.MaxCondition < 1.0f) { - toolTipText += " 0-" + (int)Math.Round(requiredItem.MaxCondition * 100) + "%"; + if (requiredItem.MaxCondition <= 0.0f) + { + toolTipText += " " + (int)Math.Round(requiredItem.MaxCondition * 100) + "%"; + } + else + { + toolTipText += " 0-" + (int)Math.Round(requiredItem.MaxCondition * 100) + "%"; + } } else if (requiredItem.MaxCondition <= 0.0f) { @@ -524,16 +538,6 @@ namespace Barotrauma.Items.Components var paddedFrame = new GUILayoutGroup(new RectTransform(new Vector2(1f, 0.9f), selectedItemFrame.RectTransform, Anchor.Center)) { RelativeSpacing = 0.03f }; var paddedReqFrame = new GUILayoutGroup(new RectTransform(new Vector2(1f, 0.9f), selectedItemReqsFrame.RectTransform, Anchor.Center)) { RelativeSpacing = 0.03f }; - /*var itemIcon = selectedItem.TargetItem.InventoryIcon ?? selectedItem.TargetItem.sprite; - if (itemIcon != null) - { - GUIImage img = new GUIImage(new RectTransform(new Point(40, 40), paddedFrame.RectTransform), - itemIcon, scaleToFit: true) - { - Color = selectedItem.TargetItem.InventoryIconColor - }; - }*/ - string itemName = GetRecipeNameAndAmount(selectedItem); string name = itemName; @@ -732,8 +736,6 @@ namespace Barotrauma.Items.Components Character user = Entity.FindEntityByID(userID) as Character; State = newState; - timeUntilReady = newTimeUntilReady; - if (newState == FabricatorState.Stopped || itemIndex == -1) { CancelFabricating(); @@ -747,6 +749,7 @@ namespace Barotrauma.Items.Components SelectItem(user, fabricationRecipes[itemIndex]); StartFabricating(fabricationRecipes[itemIndex], user); } + timeUntilReady = newTimeUntilReady; } } } diff --git a/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Machines/MiniMap.cs b/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Machines/MiniMap.cs index 8bda33a7a..ace0a070e 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Machines/MiniMap.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Machines/MiniMap.cs @@ -537,9 +537,9 @@ namespace Barotrauma.Items.Components if (item.Submarine == null && displayedSubs.Count > 0 || // item not inside a sub anymore, but display is still showing subs item.Submarine is { } itemSub && ( - !displayedSubs.Contains(itemSub) || // current sub not displayed - itemSub.DockedTo.Any(s => !displayedSubs.Contains(s)) || // some of the docked subs not displayed - displayedSubs.Any(s => s != itemSub && !itemSub.DockedTo.Contains(s)) // displaying a sub that shouldn't be displayed + !displayedSubs.Contains(itemSub) || // current sub not displayed + itemSub.DockedTo.Any(s => !displayedSubs.Contains(s) && itemSub.ConnectedDockingPorts[s].IsLocked) || // some of the docked subs not displayed + displayedSubs.Any(s => s != itemSub && !itemSub.DockedTo.Contains(s)) // displaying a sub that shouldn't be displayed ) || prevResolution.X != GameMain.GraphicsWidth || prevResolution.Y != GameMain.GraphicsHeight || // resolution changed !submarineContainer.Children.Any()) // We lack a GUI @@ -1092,6 +1092,12 @@ namespace Barotrauma.Items.Components if (!(entity is Item it)) { continue; } if (!electricalChildren.TryGetValue(miniMapGuiComponent, out GUIComponent component)) { continue; } + if (entity.Removed) + { + component.Visible = false; + continue; + } + if (item.Submarine == null || !hasPower) { component.Color = component.OutlineColor = NoPowerElectricalColor; @@ -1117,7 +1123,7 @@ namespace Barotrauma.Items.Components int current = (int)-powerTransfer.CurrPowerConsumption, load = (int)powerTransfer.PowerLoad; line1 = TextManager.GetWithVariable("statusmonitor.junctionpower.tooltip", "[amount]", current.ToString(), fallBackTag: "statusmonitor.junctioncurrent.tooltip"); - line2 = TextManager.GetWithVariable("statusmonitor.junctionload.tooltip", "[amount]", load.ToString()); + line2 = TextManager.GetWithVariables("statusmonitor.junctionload.tooltip", new string[] { "[amount]", "[load]" }, new string[] { load.ToString(), load.ToString() }); } string line3 = TextManager.GetWithVariable("statusmonitor.durability.tooltip", "[amount]", durability.ToString()); diff --git a/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Machines/Pump.cs b/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Machines/Pump.cs index a6b0b74b8..d0bf73438 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Machines/Pump.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Machines/Pump.cs @@ -19,15 +19,6 @@ namespace Barotrauma.Items.Components private readonly List<(Vector2 position, ParticleEmitter emitter)> pumpOutEmitters = new List<(Vector2 position, ParticleEmitter emitter)>(); private readonly List<(Vector2 position, ParticleEmitter emitter)> pumpInEmitters = new List<(Vector2 position, ParticleEmitter emitter)>(); - public float CurrentBrokenVolume - { - get - { - if (item.ConditionPercentage > 10.0f || !IsActive) { return 0.0f; } - return (1.0f - item.ConditionPercentage / 10.0f) * 100.0f; - } - } - partial void InitProjSpecific(XElement element) { foreach (XElement subElement in element.Elements()) @@ -193,8 +184,6 @@ namespace Barotrauma.Items.Components private readonly float flickerFrequency = 1; public override void UpdateHUD(Character character, float deltaTime, Camera cam) { - pumpSpeedLockTimer -= deltaTime; - isActiveLockTimer -= deltaTime; autoControlIndicator.Selected = IsAutoControlled; PowerButton.Enabled = isActiveLockTimer <= 0.0f; if (HasPower) diff --git a/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Machines/Sonar.cs b/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Machines/Sonar.cs index d8831b9db..be316aff4 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Machines/Sonar.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Machines/Sonar.cs @@ -83,9 +83,7 @@ namespace Barotrauma.Items.Components private const float ConnectedSubUpdateInterval = 1.0f; float connectedSubUpdateTimer; - //Vector2 = vector from the ping source to the position of the disruption - //float = strength of the disruption, between 0-1 - private readonly List> disruptedDirections = new List>(); + private readonly List<(Vector2 pos, float strength)> disruptedDirections = new List<(Vector2 pos, float strength)>(); private readonly Dictionary markerDistances = new Dictionary(); @@ -455,7 +453,20 @@ namespace Barotrauma.Items.Components zoomSlider.OnMoved(zoomSlider, zoomSlider.BarScroll); } } - + + Vector2 transducerCenter = GetTransducerPos(); + + if (steering != null && steering.DockingModeEnabled && steering.ActiveDockingSource != null) + { + Vector2 worldFocusPos = (steering.ActiveDockingSource.Item.WorldPosition + steering.DockingTarget.Item.WorldPosition) / 2.0f; + DisplayOffset = Vector2.Lerp(DisplayOffset, worldFocusPos - transducerCenter, 0.1f); + } + else + { + DisplayOffset = Vector2.Lerp(DisplayOffset, Vector2.Zero, 0.1f); + } + transducerCenter += DisplayOffset; + float distort = MathHelper.Clamp(1.0f - item.Condition / item.MaxCondition, 0.0f, 1.0f); for (int i = sonarBlips.Count - 1; i >= 0; i--) { @@ -502,8 +513,6 @@ namespace Barotrauma.Items.Components return; } - Vector2 transducerCenter = GetTransducerPos() + DisplayOffset; - if (Level.Loaded != null) { nearbyObjectUpdateTimer -= deltaTime; @@ -829,8 +838,7 @@ namespace Barotrauma.Items.Components } } - Vector2 transducerCenter = GetTransducerPos(); - + Vector2 transducerCenter = GetTransducerPos();// + DisplayOffset; if (sonarBlips.Count > 0) { @@ -840,7 +848,7 @@ namespace Barotrauma.Items.Components foreach (SonarBlip sonarBlip in sonarBlips) { - DrawBlip(spriteBatch, sonarBlip, transducerCenter, center, sonarBlip.FadeTimer / 2.0f * signalStrength, blipScale); + DrawBlip(spriteBatch, sonarBlip, transducerCenter + DisplayOffset, center, sonarBlip.FadeTimer / 2.0f * signalStrength, blipScale); } spriteBatch.End(); @@ -849,8 +857,8 @@ namespace Barotrauma.Items.Components if (item.Submarine != null && !DetectSubmarineWalls) { - DrawDockingPorts(spriteBatch, transducerCenter, signalStrength); transducerCenter += DisplayOffset; + DrawDockingPorts(spriteBatch, transducerCenter, signalStrength); DrawOwnSubmarineBorders(spriteBatch, transducerCenter, signalStrength); } else @@ -1083,10 +1091,6 @@ namespace Barotrauma.Items.Components { DrawDockingIndicator(spriteBatch, steering, ref transducerCenter); } - else - { - DisplayOffset = Vector2.Lerp(DisplayOffset, Vector2.Zero, 0.1f); - } foreach (DockingPort dockingPort in DockingPort.List) { @@ -1131,9 +1135,6 @@ namespace Barotrauma.Items.Components Vector2 worldFocusPos = (steering.ActiveDockingSource.Item.WorldPosition + steering.DockingTarget.Item.WorldPosition) / 2.0f; worldFocusPos.X = steering.DockingTarget.Item.WorldPosition.X; - DisplayOffset = Vector2.Lerp(DisplayOffset, worldFocusPos - transducerCenter, 0.1f); - transducerCenter += DisplayOffset; - Vector2 sourcePortDiff = (steering.ActiveDockingSource.Item.WorldPosition - transducerCenter) * scale; Vector2 sourcePortPos = new Vector2(sourcePortDiff.X, -sourcePortDiff.Y); Vector2 targetPortDiff = (steering.DockingTarget.Item.WorldPosition - transducerCenter) * scale; @@ -1234,7 +1235,7 @@ namespace Barotrauma.Items.Components Vector2 disruptionPos = new Vector2(levelObject.Position.X, levelObject.Position.Y); float disruptionDist = Vector2.Distance(pingSource, disruptionPos); - disruptedDirections.Add(new Pair((disruptionPos - pingSource) / disruptionDist, disruptionStrength)); + disruptedDirections.Add(((disruptionPos - pingSource) / disruptionDist, disruptionStrength)); CreateBlipsForDisruption(disruptionPos, disruptionStrength); @@ -1246,7 +1247,7 @@ namespace Barotrauma.Items.Components float distSqr = Vector2.DistanceSquared(aiTarget.WorldPosition, pingSource); if (distSqr > worldPingRadiusSqr) { continue; } float disruptionDist = (float)Math.Sqrt(distSqr); - disruptedDirections.Add(new Pair((aiTarget.WorldPosition - pingSource) / disruptionDist, aiTarget.SonarDisruption)); + disruptedDirections.Add(((aiTarget.WorldPosition - pingSource) / disruptionDist, aiTarget.SonarDisruption)); CreateBlipsForDisruption(aiTarget.WorldPosition, disruption); } } @@ -1461,10 +1462,10 @@ namespace Barotrauma.Items.Components float transducerDist = transducerDiff.Length(); Vector2 pingDirection = transducerDiff / transducerDist; bool disrupted = false; - foreach (Pair disruptDir in disruptedDirections) + foreach ((Vector2 disruptPos, float disruptStrength) in disruptedDirections) { - float dot = Vector2.Dot(pingDirection, disruptDir.First); - if (dot > 1.0f - disruptDir.Second) + float dot = Vector2.Dot(pingDirection, disruptPos); + if (dot > 1.0f - disruptStrength) { disrupted = true; break; diff --git a/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Machines/Steering.cs b/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Machines/Steering.cs index b66bcaa5a..be62c6110 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Machines/Steering.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Machines/Steering.cs @@ -403,7 +403,7 @@ namespace Barotrauma.Items.Components { if (GameMain.Client == null) { - item.SendSignal("1", "toggle_docking"); + item.SendSignal(new Signal("1", sender: Character.Controlled), "toggle_docking"); } else { diff --git a/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Repairable.cs b/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Repairable.cs index 2c2e02a2b..87f0dbe07 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Repairable.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Repairable.cs @@ -434,6 +434,7 @@ namespace Barotrauma.Items.Components DeteriorateAlways = msg.ReadBoolean(); tinkeringDuration = msg.ReadSingle(); tinkeringStrength = msg.ReadSingle(); + tinkeringPowersDevices = msg.ReadBoolean(); ushort currentFixerID = msg.ReadUInt16(); currentFixerAction = (FixActions)msg.ReadRangedInteger(0, 2); CurrentFixer = currentFixerID != 0 ? Entity.FindEntityByID(currentFixerID) as Character : null; diff --git a/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Signal/ButtonTerminal.cs b/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Signal/ButtonTerminal.cs index ff50d0fef..d0a181824 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Signal/ButtonTerminal.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Signal/ButtonTerminal.cs @@ -46,6 +46,7 @@ namespace Barotrauma.Items.Components child.Enabled = buttonsEnabled; child.Children.ForEach(c => c.Enabled = buttonsEnabled); } + if (Container == null) { return; } bool itemsContained = Container.Inventory.AllItems.Any(); if (itemsContained) { @@ -77,7 +78,7 @@ namespace Barotrauma.Items.Components { if (GameMain.IsSingleplayer) { - SendSignal((int)userData); + SendSignal((int)userData, Character.Controlled); } else { @@ -98,6 +99,7 @@ namespace Barotrauma.Items.Components partial void OnItemLoadedProjSpecific() { + if (Container == null) { return; } Container.AllowUIOverlap = true; Container.Inventory.RectTransform = containerHolder.RectTransform; } @@ -109,7 +111,7 @@ namespace Barotrauma.Items.Components public void ClientRead(ServerNetObject type, IReadMessage msg, float sendingTime) { - SendSignal(msg.ReadRangedInteger(0, Signals.Length - 1), isServerMessage: true); + SendSignal(msg.ReadRangedInteger(0, Signals.Length - 1), sender: null, isServerMessage: true); } } } \ No newline at end of file diff --git a/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Signal/CustomInterface.cs b/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Signal/CustomInterface.cs index 365680a44..5a24346cc 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Signal/CustomInterface.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Signal/CustomInterface.cs @@ -197,7 +197,7 @@ namespace Barotrauma.Items.Components } } - partial void UpdateProjSpecific() + public override void UpdateHUD(Character character, float deltaTime, Camera cam) { bool elementVisibilityChanged = false; int visibleElementCount = 0; @@ -209,6 +209,7 @@ namespace Barotrauma.Items.Components if (uiElement.Visible != visible) { uiElement.Visible = visible; + uiElement.IgnoreLayoutGroups = !uiElement.Visible; elementVisibilityChanged = true; } } @@ -223,6 +224,7 @@ namespace Barotrauma.Items.Components uiElement.RectTransform.RelativeSize = new Vector2(1.0f, elementSize); } GuiFrame.Visible = visibleElementCount > 0; + uiElementContainer.Recalculate(); } } diff --git a/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Signal/MotionSensor.cs b/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Signal/MotionSensor.cs index 08dd799bc..8d7ec8a22 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Signal/MotionSensor.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Signal/MotionSensor.cs @@ -12,9 +12,9 @@ namespace Barotrauma.Items.Components public void Draw(SpriteBatch spriteBatch, bool editing, float itemDepth = -1) { - if (!editing || !MapEntity.SelectedList.Contains(item)) return; + if (!editing || !MapEntity.SelectedList.Contains(item)) { return; } - Vector2 pos = item.WorldPosition + detectOffset; + Vector2 pos = item.WorldPosition + TransformedDetectOffset; pos.Y = -pos.Y; GUI.DrawRectangle(spriteBatch, pos - new Vector2(rangeX, rangeY), new Vector2(rangeX, rangeY) * 2.0f, Color.Cyan * 0.5f, isFilled: false, thickness: 2); } diff --git a/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Signal/Wire.cs b/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Signal/Wire.cs index f83259306..e0b26ad02 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Signal/Wire.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Signal/Wire.cs @@ -286,7 +286,6 @@ namespace Barotrauma.Items.Components item.Color, depth, 0.3f); } - public static void UpdateEditing(List wires) { var doubleClicked = PlayerInput.DoubleClicked(); @@ -509,6 +508,31 @@ namespace Barotrauma.Items.Components } } + public override void Move(Vector2 amount) + { + //only used in the sub editor, hence only in the client project + if (!item.IsSelected) { return; } + + Vector2 wireNodeOffset = item.Submarine == null ? Vector2.Zero : item.Submarine.HiddenSubPosition + amount; + for (int i = 0; i < nodes.Count; i++) + { + if (i == 0 || i == nodes.Count - 1) + { + if (connections[0]?.Item != null && !connections[0].Item.IsSelected && + (Submarine.RectContains(connections[0].Item.Rect, nodes[i] + wireNodeOffset) || Submarine.RectContains(connections[0].Item.Rect, nodes[i] + wireNodeOffset - amount))) + { + continue; + } + else if (connections[1]?.Item != null && !connections[1].Item.IsSelected && + (Submarine.RectContains(connections[1].Item.Rect, nodes[i] + wireNodeOffset) || Submarine.RectContains(connections[1].Item.Rect, nodes[i] + wireNodeOffset - amount))) + { + continue; + } + } + nodes[i] += amount; + } + UpdateSections(); + } public bool IsMouseOn() { if (GUI.MouseOn == null) diff --git a/Barotrauma/BarotraumaClient/ClientSource/Items/Components/StatusHUD.cs b/Barotrauma/BarotraumaClient/ClientSource/Items/Components/StatusHUD.cs index d974c2044..88367f1a0 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Items/Components/StatusHUD.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Items/Components/StatusHUD.cs @@ -301,7 +301,7 @@ namespace Barotrauma.Items.Components Dictionary combinedAfflictionStrengths = new Dictionary(); foreach (Affliction affliction in allAfflictions) { - if (affliction.Strength < affliction.Prefab.ShowInHealthScannerThreshold || affliction.Strength <= 0.0f) continue; + if (affliction.Strength < affliction.Prefab.ShowInHealthScannerThreshold || affliction.Strength <= 0.0f) { continue; } if (combinedAfflictionStrengths.ContainsKey(affliction.Prefab)) { combinedAfflictionStrengths[affliction.Prefab] += affliction.Strength; @@ -314,7 +314,7 @@ namespace Barotrauma.Items.Components foreach (AfflictionPrefab affliction in combinedAfflictionStrengths.Keys) { - texts.Add(TextManager.AddPunctuation(':', affliction.Name, Math.Max(((int)combinedAfflictionStrengths[affliction]), 1).ToString() + " %")); + texts.Add(TextManager.AddPunctuation(':', affliction.Name, Math.Max((int)combinedAfflictionStrengths[affliction], 1).ToString() + " %")); textColors.Add(Color.Lerp(GUI.Style.Orange, GUI.Style.Red, combinedAfflictionStrengths[affliction] / affliction.MaxStrength)); } } diff --git a/Barotrauma/BarotraumaClient/ClientSource/Items/Item.cs b/Barotrauma/BarotraumaClient/ClientSource/Items/Item.cs index 60d8a0fc6..f5a43c09e 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Items/Item.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Items/Item.cs @@ -17,7 +17,7 @@ namespace Barotrauma partial class Item : MapEntity, IDamageable, ISerializableEntity, IServerSerializable, IClientSerializable { public static bool ShowItems = true, ShowWires = true; - + private readonly List positionBuffer = new List(); private readonly List activeHUDs = new List(); @@ -89,8 +89,8 @@ namespace Barotrauma { if (itemInUseWarning == null) { - itemInUseWarning = new GUITextBlock(new RectTransform(new Point(10), GUI.Canvas), "", - textColor: GUI.Style.Orange, color: Color.Black, + itemInUseWarning = new GUITextBlock(new RectTransform(new Point(10), GUI.Canvas), "", + textColor: GUI.Style.Orange, color: Color.Black, textAlignment: Alignment.Center, style: "OuterGlow"); } return itemInUseWarning; @@ -105,6 +105,9 @@ namespace Barotrauma { return false; } + + if (!SubEditorScreen.IsLayerVisible(this)) { return false;} + return parentInventory == null && (body == null || body.Enabled) && ShowItems; } } @@ -154,7 +157,7 @@ namespace Barotrauma if (containedSprite.UseWhenAttached) { activeContainedSprite = containedSprite; - activeSprite = containedSprite.Sprite; + activeSprite = containedSprite.Sprite; UpdateSpriteStates(0.0f); return; } @@ -196,7 +199,7 @@ namespace Barotrauma { brokenSprite.Sprite.EnsureLazyLoaded(); } - + foreach (var decorativeSprite in ((ItemPrefab)prefab).DecorativeSprites) { decorativeSprite.Sprite.EnsureLazyLoaded(); @@ -255,7 +258,7 @@ namespace Barotrauma public override void Draw(SpriteBatch spriteBatch, bool editing, bool back = true) { - if (!Visible || (!editing && HiddenInGame)) { return; } + if (!Visible || (!editing && HiddenInGame) || !SubEditorScreen.IsLayerVisible(this)) { return; } if (editing) { @@ -265,7 +268,7 @@ namespace Barotrauma } else if (!ShowItems) { return; } } - + Color color = IsIncludedInSelection && editing ? GUI.Style.Blue : IsHighlighted && !GUI.DisableItemHighlights && Screen.Selected != GameMain.GameScreen ? GUI.Style.Orange * Math.Max(GetSpriteColor().A / (float) byte.MaxValue, 0.1f) : GetSpriteColor(); //if (IsSelected && editing) color = Color.Lerp(color, Color.Gold, 0.5f); @@ -273,7 +276,7 @@ namespace Barotrauma bool isWiringMode = editing && SubEditorScreen.TransparentWiringMode && SubEditorScreen.IsWiringMode() && !isWire && parentInventory == null; bool renderTransparent = isWiringMode && GetComponent() == null; if (renderTransparent) { color *= 0.15f; } - + BrokenItemSprite fadeInBrokenSprite = null; float fadeInBrokenSpriteAlpha = 0.0f; float displayCondition = FakeBroken ? 0.0f : ConditionPercentage; @@ -322,7 +325,7 @@ namespace Barotrauma Vector2 size = new Vector2(rect.Width, rect.Height); if (color.A > 0) { - activeSprite.DrawTiled(spriteBatch, new Vector2(DrawPosition.X - rect.Width / 2, -(DrawPosition.Y + rect.Height / 2)) + drawOffset, + activeSprite.DrawTiled(spriteBatch, new Vector2(DrawPosition.X - rect.Width / 2, -(DrawPosition.Y + rect.Height / 2)) + drawOffset, size, color: color, textureScale: Vector2.One * Scale, depth: depth); @@ -336,11 +339,11 @@ namespace Barotrauma } foreach (var decorativeSprite in Prefab.DecorativeSprites) { - if (!spriteAnimState[decorativeSprite].IsActive) { continue; } + if (!spriteAnimState[decorativeSprite].IsActive) { continue; } Vector2 offset = decorativeSprite.GetOffset(ref spriteAnimState[decorativeSprite].OffsetState, spriteAnimState[decorativeSprite].RandomOffsetMultiplier, flippedX && Prefab.CanSpriteFlipX ? rotationRad : -rotationRad) * Scale; if (flippedX && Prefab.CanSpriteFlipX) { offset.X = -offset.X; } if (flippedY && Prefab.CanSpriteFlipY) { offset.Y = -offset.Y; } - decorativeSprite.Sprite.DrawTiled(spriteBatch, + decorativeSprite.Sprite.DrawTiled(spriteBatch, new Vector2(DrawPosition.X + offset.X - rect.Width / 2, -(DrawPosition.Y + offset.Y + rect.Height / 2)), size, color: color, textureScale: Vector2.One * Scale, @@ -380,7 +383,7 @@ namespace Barotrauma Vector2 offset = decorativeSprite.GetOffset(ref spriteAnimState[decorativeSprite].OffsetState, spriteAnimState[decorativeSprite].RandomOffsetMultiplier, flippedX && Prefab.CanSpriteFlipX ? rotationRad : -rotationRad) * Scale; if (flippedX && Prefab.CanSpriteFlipX) { offset.X = -offset.X; } if (flippedY && Prefab.CanSpriteFlipY) { offset.Y = -offset.Y; } - decorativeSprite.Sprite.Draw(spriteBatch, new Vector2(DrawPosition.X + offset.X, -(DrawPosition.Y + offset.Y)), color, + decorativeSprite.Sprite.Draw(spriteBatch, new Vector2(DrawPosition.X + offset.X, -(DrawPosition.Y + offset.Y)), color, rotationRad + rot, decorativeSprite.GetScale(spriteAnimState[decorativeSprite].RandomScaleFactor) * Scale, activeSprite.effects, depth: Math.Min(depth + (decorativeSprite.Sprite.Depth - activeSprite.Depth), 0.999f)); } @@ -440,11 +443,11 @@ namespace Barotrauma depth: depth + (decorativeSprite.Sprite.Depth - activeSprite.Depth)); } } - + foreach (var upgrade in Upgrades) { var upgradeSprites = GetUpgradeSprites(upgrade); - + foreach (var decorativeSprite in upgradeSprites) { if (!spriteAnimState[decorativeSprite].IsActive) { continue; } @@ -456,7 +459,7 @@ namespace Barotrauma rotation, decorativeSprite.GetScale(spriteAnimState[decorativeSprite].RandomScaleFactor) * Scale, activeSprite.effects, depth: depth + (decorativeSprite.Sprite.Depth - activeSprite.Depth)); } - + } activeSprite.effects = oldEffects; @@ -466,7 +469,7 @@ namespace Barotrauma } } - //use a backwards for loop because the drawable components may disable drawing, + //use a backwards for loop because the drawable components may disable drawing, //causing them to be removed from the list for (int i = drawableComponents.Count - 1; i >= 0; i--) { @@ -501,7 +504,7 @@ namespace Barotrauma Vector2 drawPos = new Vector2(DrawPosition.X - rect.Width / 2, -(DrawPosition.Y + rect.Height / 2)); Vector2 drawSize = new Vector2(MathF.Ceiling(rect.Width + Math.Abs(drawPos.X - (int)drawPos.X)), MathF.Ceiling(rect.Height + Math.Abs(drawPos.Y - (int)drawPos.Y))); drawPos = new Vector2(MathF.Floor(drawPos.X), MathF.Floor(drawPos.Y)); - GUI.DrawRectangle(spriteBatch, drawPos, drawSize, + GUI.DrawRectangle(spriteBatch, drawPos, drawSize, Color.White, false, 0, thickness: Math.Max(1, (int)(2 / Screen.Selected.Cam.Zoom))); foreach (Rectangle t in Prefab.Triggers) @@ -582,19 +585,25 @@ namespace Barotrauma } } - DecorativeSprite.UpdateSpriteStates(Prefab.DecorativeSpriteGroups, spriteAnimState, ID, deltaTime, ConditionalMatches); - + if (Prefab.DecorativeSpriteGroups.Count > 0) + { + DecorativeSprite.UpdateSpriteStates(Prefab.DecorativeSpriteGroups, spriteAnimState, ID, deltaTime, ConditionalMatches); + } + foreach (var upgrade in Upgrades) { - var upgradeSprites = GetUpgradeSprites(upgrade); + var upgradeSprites = GetUpgradeSprites(upgrade); foreach (var decorativeSprite in upgradeSprites) { var spriteState = spriteAnimState[decorativeSprite]; spriteState.IsActive = true; - foreach (var _ in decorativeSprite.IsActiveConditionals.Where(conditional => !ConditionalMatches(conditional))) + foreach (var conditional in decorativeSprite.IsActiveConditionals) { - spriteState.IsActive = false; - break; + if (!ConditionalMatches(conditional)) + { + spriteState.IsActive = false; + break; + } } } } @@ -696,8 +705,8 @@ namespace Barotrauma foreach (string tag in ip.PreferredContainers.SelectMany(pc => pc.Primary)) { availableTags.Add(tag); } foreach (string tag in ip.PreferredContainers.SelectMany(pc => pc.Secondary)) { availableTags.Add(tag); } } - //remove identifiers from the available container tags - //(otherwise the list will include many irrelevant options, + //remove identifiers from the available container tags + //(otherwise the list will include many irrelevant options, //e.g. "weldingtool" because a welding fuel tank can be placed inside the container, etc) availableTags.RemoveWhere(t => MapEntityPrefab.List.Any(me => me.Identifier == t)); new GUIButton(new RectTransform(new Vector2(0.1f, 1), tagsField.RectTransform, Anchor.TopRight), "...") @@ -749,7 +758,7 @@ namespace Barotrauma { me.FlipY(relativeToSub: false); } - if (!SelectedList.Contains(this)) { FlipY(relativeToSub: false); } + if (!SelectedList.Contains(this)) { FlipY(relativeToSub: false); } return true; } }; @@ -805,9 +814,9 @@ namespace Barotrauma { if (!ic.AllowInGameEditing) { continue; } if (SerializableProperty.GetProperties(ic).Count == 0 && - !SerializableProperty.GetProperties(ic).Any(p => p.GetAttribute().IsEditable(ic))) + !SerializableProperty.GetProperties(ic).Any(p => p.GetAttribute().IsEditable(ic))) { - continue; + continue; } } else @@ -869,7 +878,7 @@ namespace Barotrauma textBox.Text = relatedItem.JoinedIdentifiers; return true; }; - } + } ic.CreateEditingHUD(componentEditor); componentEditor.Recalculate(); @@ -892,7 +901,7 @@ namespace Barotrauma return upgradeSprites; } - + public override bool AddUpgrade(Upgrade upgrade, bool createNetworkEvent = false) { if (upgrade.Prefab.IsWallUpgrade) { return false; } @@ -949,7 +958,7 @@ namespace Barotrauma //reset positions first List elementsToMove = new List(); - if (editingHUD != null && editingHUD.UserData == this && + if (editingHUD != null && editingHUD.UserData == this && ((HasInGameEditableProperties && Character.Controlled?.SelectedConstruction == this) || Screen.Selected == GameMain.SubEditorScreen)) { elementsToMove.Add(editingHUD); @@ -972,8 +981,8 @@ namespace Barotrauma int disallowedPadding = (int)(50 * GUI.Scale); disallowedAreas.Add(GameMain.GameSession.CrewManager.GetActiveCrewArea()); disallowedAreas.Add(new Rectangle( - HUDLayoutSettings.ChatBoxArea.X - disallowedPadding, HUDLayoutSettings.ChatBoxArea.Y, - HUDLayoutSettings.ChatBoxArea.Width + disallowedPadding, HUDLayoutSettings.ChatBoxArea.Height)); + HUDLayoutSettings.ChatBoxArea.X - disallowedPadding, HUDLayoutSettings.ChatBoxArea.Y, + HUDLayoutSettings.ChatBoxArea.Width + disallowedPadding, HUDLayoutSettings.ChatBoxArea.Height)); } if (Screen.Selected is SubEditorScreen editor) @@ -985,8 +994,8 @@ namespace Barotrauma GUI.PreventElementOverlap(elementsToMove, disallowedAreas, new Rectangle( - 0, 20, - GameMain.GraphicsWidth, + 0, 20, + GameMain.GraphicsWidth, HUDLayoutSettings.InventoryTopY > 0 ? HUDLayoutSettings.InventoryTopY - 40 : GameMain.GraphicsHeight - 80)); foreach (ItemComponent ic in activeHUDs) @@ -995,7 +1004,7 @@ namespace Barotrauma var linkUIToComponent = ic.GetLinkUIToComponent(); - if (linkUIToComponent == null) { continue; } + if (linkUIToComponent == null) { continue; } ic.GuiFrame.RectTransform.ScreenSpaceOffset = linkUIToComponent.GuiFrame.RectTransform.ScreenSpaceOffset; } @@ -1110,14 +1119,14 @@ namespace Barotrauma } } } - + public void DrawHUD(SpriteBatch spriteBatch, Camera cam, Character character) { if (HasInGameEditableProperties && (character.SelectedConstruction == this || EditableWhenEquipped)) { DrawEditing(spriteBatch, cam); } - + foreach (ItemComponent ic in activeHUDs) { if (ic.CanBeSelected) @@ -1138,9 +1147,9 @@ namespace Barotrauma GUI.DrawRectangle(spriteBatch, debugInitialHudPositions[i], Color.Orange); GUI.DrawRectangle(spriteBatch, ic.GuiFrame.Rect, Color.LightGreen); GUI.DrawLine(spriteBatch, debugInitialHudPositions[i].Location.ToVector2(), ic.GuiFrame.Rect.Location.ToVector2(), Color.Orange); - + i++; - } + } } } @@ -1262,7 +1271,7 @@ namespace Barotrauma NetEntityEvent.Type eventType = (NetEntityEvent.Type)msg.ReadRangedInteger(0, Enum.GetValues(typeof(NetEntityEvent.Type)).Length - 1); - + switch (eventType) { case NetEntityEvent.Type.ComponentState: @@ -1323,7 +1332,7 @@ namespace Barotrauma ItemComponent targetComponent = componentIndex < components.Count ? components[componentIndex] : null; Character targetCharacter = FindEntityByID(targetCharacterID) as Character; - Limb targetLimb = targetCharacter != null && targetLimbID < targetCharacter.AnimController.Limbs.Length ? + Limb targetLimb = targetCharacter != null && targetLimbID < targetCharacter.AnimController.Limbs.Length ? targetCharacter.AnimController.Limbs[targetLimbID] : null; Entity useTarget = FindEntityByID(useTargetID); @@ -1334,7 +1343,7 @@ namespace Barotrauma else { targetComponent.ApplyStatusEffects(actionType, 1.0f, targetCharacter, targetLimb, useTarget, worldPosition: worldPosition); - } + } } break; case NetEntityEvent.Type.ChangeProperty: @@ -1346,7 +1355,7 @@ namespace Barotrauma if (UpgradePrefab.Find(identifier) is { } upgradePrefab) { Upgrade upgrade = new Upgrade(this, upgradePrefab, level); - + byte targetCount = msg.ReadByte(); for (int i = 0; i < targetCount; i++) { @@ -1360,7 +1369,7 @@ namespace Barotrauma AddUpgrade(upgrade, false); } - break; + break; case NetEntityEvent.Type.Invalid: break; } @@ -1394,7 +1403,7 @@ namespace Barotrauma Character targetCharacter = FindEntityByID(characterID) as Character; msg.Write(characterID); - msg.Write(targetCharacter == null ? (byte)255 : (byte)Array.IndexOf(targetCharacter.AnimController.Limbs, targetLimb)); + msg.Write(targetCharacter == null ? (byte)255 : (byte)Array.IndexOf(targetCharacter.AnimController.Limbs, targetLimb)); break; case NetEntityEvent.Type.ChangeProperty: WritePropertyChange(msg, extraData, true); diff --git a/Barotrauma/BarotraumaClient/ClientSource/Map/Gap.cs b/Barotrauma/BarotraumaClient/ClientSource/Map/Gap.cs index 6eeda5f1f..430059ff6 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Map/Gap.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Map/Gap.cs @@ -14,7 +14,7 @@ namespace Barotrauma { get { - return ShowGaps; + return ShowGaps && SubEditorScreen.IsLayerVisible(this); } } @@ -42,7 +42,7 @@ namespace Barotrauma } } - if (!editing || !ShowGaps) { return; } + if (!editing || !ShowGaps || !SubEditorScreen.IsLayerVisible(this)) { return; } Color clr = (open == 0.0f) ? GUI.Style.Red : Color.Cyan; if (IsHighlighted) clr = Color.Gold; @@ -128,8 +128,14 @@ namespace Barotrauma { //no flow particles between linked hulls (= rooms consisting of multiple hulls) if (hull1.linkedTo.Contains(hull2)) { return; } - if (hull1.linkedTo.Any(h => h.linkedTo.Contains(hull1) && h.linkedTo.Contains(hull2))) { return; } - if (hull2.linkedTo.Any(h => h.linkedTo.Contains(hull1) && h.linkedTo.Contains(hull2))) { return; } + foreach (Hull h in hull1.linkedTo) + { + if (h.linkedTo.Contains(hull1) && h.linkedTo.Contains(hull2)) { return; } + } + foreach (Hull h in hull2.linkedTo) + { + if (h.linkedTo.Contains(hull1) && h.linkedTo.Contains(hull2)) { return; } + } } Vector2 pos = Position; @@ -177,7 +183,7 @@ namespace Barotrauma "bubbles", (Submarine == null ? pos : pos + Submarine.Position), velocity, 0, flowTargetHull); - + particleTimer -= emitInterval; } } diff --git a/Barotrauma/BarotraumaClient/ClientSource/Map/Hull.cs b/Barotrauma/BarotraumaClient/ClientSource/Map/Hull.cs index 13533eb7d..d1d15b1c9 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Map/Hull.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Map/Hull.cs @@ -34,14 +34,14 @@ namespace Barotrauma private readonly List remoteDecals = new List(); private readonly HashSet pendingDecalUpdates = new HashSet(); - + private double lastAmbientLightEditTime; public override bool SelectableInEditor { get { - return ShowHulls; + return ShowHulls && SubEditorScreen.IsLayerVisible(this); } } @@ -133,39 +133,41 @@ namespace Barotrauma else { if (!entity.linkedTo.Contains(this)) { entity.linkedTo.Add(this); } - if (!linkedTo.Contains(this)) { linkedTo.Add(entity); } + if (!linkedTo.Contains(this)) { linkedTo.Add(entity); } } } } partial void UpdateProjSpecific(float deltaTime, Camera cam) { - serverUpdateDelay -= deltaTime; - if (serverUpdateDelay <= 0.0f) + if (GameMain.Client != null) { - ApplyRemoteState(); - } - - if (networkUpdatePending) - { - networkUpdateTimer += deltaTime; - if (networkUpdateTimer > 0.2f) + serverUpdateDelay -= deltaTime; + if (serverUpdateDelay <= 0.0f) { - if (!pendingSectionUpdates.Any() && !pendingDecalUpdates.Any()) + ApplyRemoteState(); + } + if (networkUpdatePending) + { + networkUpdateTimer += deltaTime; + if (networkUpdateTimer > 0.2f) { - GameMain.NetworkMember?.CreateEntityEvent(this); + if (!pendingSectionUpdates.Any() && !pendingDecalUpdates.Any()) + { + GameMain.NetworkMember?.CreateEntityEvent(this); + } + foreach (Decal decal in pendingDecalUpdates) + { + GameMain.NetworkMember?.CreateEntityEvent(this, new object[] { decal }); + } + foreach (int pendingSectionUpdate in pendingSectionUpdates) + { + GameMain.NetworkMember?.CreateEntityEvent(this, new object[] { pendingSectionUpdate }); + } + pendingSectionUpdates.Clear(); + networkUpdatePending = false; + networkUpdateTimer = 0.0f; } - foreach (Decal decal in pendingDecalUpdates) - { - GameMain.NetworkMember?.CreateEntityEvent(this, new object[] { decal }); - } - foreach (int pendingSectionUpdate in pendingSectionUpdates) - { - GameMain.NetworkMember?.CreateEntityEvent(this, new object[] { pendingSectionUpdate }); - } - pendingSectionUpdates.Clear(); - networkUpdatePending = false; - networkUpdateTimer = 0.0f; } } @@ -243,7 +245,7 @@ namespace Barotrauma return; } - if (!ShowHulls && !GameMain.DebugDraw) { return; } + if ((!ShowHulls || !SubEditorScreen.IsLayerVisible(this)) && !GameMain.DebugDraw) { return; } if (!editing && (!GameMain.DebugDraw || Screen.Selected.Cam.Zoom < 0.1f)) { return; } @@ -385,45 +387,42 @@ namespace Barotrauma } } + private static readonly Vector3[] corners = new Vector3[6]; + private static readonly Vector2[] uvCoords = new Vector2[4]; + private static readonly Vector3[] prevCorners = new Vector3[2]; + private static readonly Vector2[] prevUVs = new Vector2[2]; + private void UpdateVertices(Camera cam, EntityGrid entityGrid, WaterRenderer renderer) { Vector2 submarinePos = Submarine == null ? Vector2.Zero : Submarine.DrawPosition; //if there's no more space in the buffer, don't render the water in the hull - //not an ideal solution, but this seems to only happen in cases where the missing + //not an ideal solution, but this seems to only happen in cases where the missing //water is not very noticeable (e.g. zoomed very far out so that multiple subs and ruins are visible) if (renderer.PositionInBuffer > renderer.vertices.Length - 6) { return; } - if (!renderer.IndoorsVertices.ContainsKey(entityGrid)) - { - renderer.IndoorsVertices[entityGrid] = new VertexPositionColorTexture[WaterRenderer.DefaultIndoorsBufferSize]; - renderer.PositionInIndoorsBuffer[entityGrid] = 0; - } - //calculate where the surface should be based on the water volume float top = rect.Y + submarinePos.Y; float bottom = top - rect.Height; float renderSurface = drawSurface + submarinePos.Y; - if (bottom > cam.WorldView.Y || top < cam.WorldView.Y - cam.WorldView.Height) return; + if (bottom > cam.WorldView.Y || top < cam.WorldView.Y - cam.WorldView.Height) { return; } + if (rect.X + submarinePos.X > cam.WorldView.Right || rect.Right + submarinePos.X < cam.WorldView.X) { return; } - Matrix transform = cam.Transform * Matrix.CreateOrthographic(GameMain.GraphicsWidth, GameMain.GraphicsHeight, -1, 1) * 0.5f; + Matrix transform = cam.Transform * Matrix.CreateOrthographic(GameMain.GraphicsWidth, GameMain.GraphicsHeight, -1, 1) * 0.5f; if (!update) { // create the four corners of our triangle. - Vector3[] corners = new Vector3[4]; - corners[0] = new Vector3(rect.X, rect.Y, 0.0f); corners[1] = new Vector3(rect.X + rect.Width, rect.Y, 0.0f); corners[2] = new Vector3(corners[1].X, rect.Y - rect.Height, 0.0f); corners[3] = new Vector3(corners[0].X, corners[2].Y, 0.0f); - Vector2[] uvCoords = new Vector2[4]; for (int i = 0; i < 4; i++) { corners[i] += new Vector3(submarinePos, 0.0f); @@ -443,6 +442,15 @@ namespace Barotrauma return; } + if (!renderer.IndoorsVertices.ContainsKey(entityGrid)) + { + renderer.IndoorsVertices[entityGrid] = new VertexPositionColorTexture[WaterRenderer.DefaultIndoorsBufferSize]; + } + if (!renderer.PositionInIndoorsBuffer.ContainsKey(entityGrid)) + { + renderer.PositionInIndoorsBuffer[entityGrid] = 0; + } + float x = rect.X; if (Submarine != null) { x += Submarine.DrawPosition.X; } @@ -454,20 +462,15 @@ namespace Barotrauma x += start * WaveWidth; - Vector3[] prevCorners = new Vector3[2]; - Vector2[] prevUVs = new Vector2[2]; - int width = WaveWidth; - + for (int i = start; i < end; i++) { - Vector3[] corners = new Vector3[6]; - //top left corners[0] = new Vector3(x, top, 0.0f); //watersurface left corners[3] = new Vector3(corners[0].X, renderSurface + waveY[i], 0.0f); - + //top right corners[1] = new Vector3(x + width, top, 0.0f); //watersurface right @@ -477,7 +480,7 @@ namespace Barotrauma corners[4] = new Vector3(x, bottom, 0.0f); //bottom right corners[5] = new Vector3(x + width, bottom, 0.0f); - + Vector2[] uvCoords = new Vector2[4]; for (int n = 0; n < 4; n++) { @@ -714,7 +717,7 @@ namespace Barotrauma } remoteBackgroundSections.Clear(); - if (remoteDecals.Any()) + if (remoteDecals.Count > 0) { decals.Clear(); foreach (RemoteDecal remoteDecal in remoteDecals) diff --git a/Barotrauma/BarotraumaClient/ClientSource/Map/Levels/WaterRenderer.cs b/Barotrauma/BarotraumaClient/ClientSource/Map/Levels/WaterRenderer.cs index dab22d962..71df6f48a 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Map/Levels/WaterRenderer.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Map/Levels/WaterRenderer.cs @@ -51,7 +51,7 @@ namespace Barotrauma public readonly WaterVertexData IndoorsSurfaceBottomColor = new WaterVertexData(0.2f, 0.1f, 0.9f, 1.0f); public VertexPositionTexture[] vertices = new VertexPositionTexture[DefaultBufferSize]; - public Dictionary IndoorsVertices = new Dictionary();// VertexPositionColorTexture[DefaultBufferSize * 2]; + public Dictionary IndoorsVertices = new Dictionary(); public Effect WaterEffect { @@ -81,13 +81,17 @@ namespace Barotrauma if (basicEffect == null) { - basicEffect = new BasicEffect(GameMain.Instance.GraphicsDevice); - basicEffect.VertexColorEnabled = false; - - basicEffect.TextureEnabled = true; + basicEffect = new BasicEffect(GameMain.Instance.GraphicsDevice) + { + VertexColorEnabled = false, + TextureEnabled = true + }; } } + private readonly VertexPositionColorTexture[] tempVertices = new VertexPositionColorTexture[6]; + private readonly Vector3[] tempCorners = new Vector3[4]; + public void RenderWater(SpriteBatch spriteBatch, RenderTarget2D texture, Camera cam) { spriteBatch.GraphicsDevice.BlendState = BlendState.NonPremultiplied; @@ -139,29 +143,26 @@ namespace Barotrauma WaterEffect.CurrentTechnique.Passes[0].Apply(); - VertexPositionColorTexture[] verts = new VertexPositionColorTexture[6]; - Rectangle view = cam != null ? cam.WorldView : spriteBatch.GraphicsDevice.Viewport.Bounds; - var corners = new Vector3[4]; - corners[0] = new Vector3(view.X, view.Y, 0.1f); - corners[1] = new Vector3(view.Right, view.Y, 0.1f); - corners[2] = new Vector3(view.Right, view.Y - view.Height, 0.1f); - corners[3] = new Vector3(view.X, view.Y - view.Height, 0.1f); + tempCorners[0] = new Vector3(view.X, view.Y, 0.1f); + tempCorners[1] = new Vector3(view.Right, view.Y, 0.1f); + tempCorners[2] = new Vector3(view.Right, view.Y - view.Height, 0.1f); + tempCorners[3] = new Vector3(view.X, view.Y - view.Height, 0.1f); WaterVertexData backGroundColor = new WaterVertexData(0.1f, 0.1f, 0.5f, 1.0f); - verts[0] = new VertexPositionColorTexture(corners[0], backGroundColor, Vector2.Zero); - verts[1] = new VertexPositionColorTexture(corners[1], backGroundColor, Vector2.Zero); - verts[2] = new VertexPositionColorTexture(corners[2], backGroundColor, Vector2.Zero); - verts[3] = new VertexPositionColorTexture(corners[0], backGroundColor, Vector2.Zero); - verts[4] = new VertexPositionColorTexture(corners[2], backGroundColor, Vector2.Zero); - verts[5] = new VertexPositionColorTexture(corners[3], backGroundColor, Vector2.Zero); + tempVertices[0] = new VertexPositionColorTexture(tempCorners[0], backGroundColor, Vector2.Zero); + tempVertices[1] = new VertexPositionColorTexture(tempCorners[1], backGroundColor, Vector2.Zero); + tempVertices[2] = new VertexPositionColorTexture(tempCorners[2], backGroundColor, Vector2.Zero); + tempVertices[3] = new VertexPositionColorTexture(tempCorners[0], backGroundColor, Vector2.Zero); + tempVertices[4] = new VertexPositionColorTexture(tempCorners[2], backGroundColor, Vector2.Zero); + tempVertices[5] = new VertexPositionColorTexture(tempCorners[3], backGroundColor, Vector2.Zero); - spriteBatch.GraphicsDevice.DrawUserPrimitives(PrimitiveType.TriangleList, verts, 0, 2); + spriteBatch.GraphicsDevice.DrawUserPrimitives(PrimitiveType.TriangleList, tempVertices, 0, 2); foreach (KeyValuePair subVerts in IndoorsVertices) { - if (!PositionInIndoorsBuffer.ContainsKey(subVerts.Key) || PositionInIndoorsBuffer[subVerts.Key] == 0) continue; + if (!PositionInIndoorsBuffer.ContainsKey(subVerts.Key) || PositionInIndoorsBuffer[subVerts.Key] == 0) { continue; } offset = WavePos; if (subVerts.Key.Submarine != null) { offset -= subVerts.Key.Submarine.WorldPosition; } @@ -207,11 +208,23 @@ namespace Barotrauma basicEffect.CurrentTechnique.Passes[0].Apply(); } + private readonly List buffersToRemove = new List(); public void ResetBuffers() { PositionInBuffer = 0; PositionInIndoorsBuffer.Clear(); - IndoorsVertices.Clear(); + buffersToRemove.Clear(); + foreach (var buffer in IndoorsVertices.Keys) + { + if (buffer.Submarine?.Removed ?? false) + { + buffersToRemove.Add(buffer); + } + } + foreach (var bufferToRemove in buffersToRemove) + { + IndoorsVertices.Remove(bufferToRemove); + } } public void Dispose() diff --git a/Barotrauma/BarotraumaClient/ClientSource/Map/Lights/LightSource.cs b/Barotrauma/BarotraumaClient/ClientSource/Map/Lights/LightSource.cs index a47285cca..151b148dd 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Map/Lights/LightSource.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Map/Lights/LightSource.cs @@ -517,7 +517,7 @@ namespace Barotrauma.Lights private void RefreshConvexHullList(ConvexHullList chList, Vector2 lightPos, Submarine sub) { var fullChList = ConvexHull.HullLists.Find(x => x.Submarine == sub); - if (fullChList == null) return; + if (fullChList == null) { return; } chList.List = fullChList.List.FindAll(ch => ch.Enabled && MathUtils.CircleIntersectsRectangle(lightPos, TextureRange, ch.BoundingBox)); @@ -530,105 +530,121 @@ namespace Barotrauma.Lights /// private void CheckHullsInRange() { - List subs = new List(Submarine.Loaded); - subs.Add(null); - - foreach (Submarine sub in subs) + foreach (Submarine sub in Submarine.Loaded) { - //find the list of convexhulls that belong to the sub - var chList = hullsInRange.Find(x => x.Submarine == sub); + CheckHullsInRange(sub); + } + //check convex hulls that aren't in any sub + CheckHullsInRange(null); + } - //not found -> create one - if (chList == null) + private void CheckHullsInRange(Submarine sub) + { + //find the list of convexhulls that belong to the sub + ConvexHullList chList = null; + foreach (var ch in hullsInRange) + { + if (ch.Submarine == sub) { - chList = new ConvexHullList(sub); - hullsInRange.Add(chList); - NeedsRecalculation = true; - } - - if (chList.List.Any(ch => ch.LastVertexChangeTime > lastRecalculationTime && !chList.IsHidden.Contains(ch))) - { - NeedsRecalculation = true; - } - - Vector2 lightPos = position; - if (ParentSub == null) - { - //light and the convexhulls are both outside - if (sub == null) - { - if (NeedsHullCheck) - { - RefreshConvexHullList(chList, lightPos, null); - } - } - //light is outside, convexhulls inside a sub - else - { - lightPos -= sub.Position; - - Rectangle subBorders = sub.Borders; - subBorders.Location += sub.HiddenSubPosition.ToPoint() - new Point(0, sub.Borders.Height); - - //only draw if the light overlaps with the sub - if (!MathUtils.CircleIntersectsRectangle(lightPos, TextureRange, subBorders)) - { - if (chList.List.Count > 0) NeedsRecalculation = true; - chList.List.Clear(); - continue; - } - - RefreshConvexHullList(chList, lightPos, sub); - } - } - else - { - //light is inside, convexhull outside - if (sub == null) continue; - - //light and convexhull are both inside the same sub - if (sub == ParentSub) - { - if (NeedsHullCheck) - { - RefreshConvexHullList(chList, lightPos, sub); - } - } - //light and convexhull are inside different subs - else - { - if (sub.DockedTo.Contains(ParentSub) && !NeedsHullCheck) continue; - - lightPos -= (sub.Position - ParentSub.Position); - - Rectangle subBorders = sub.Borders; - subBorders.Location += sub.HiddenSubPosition.ToPoint() - new Point(0, sub.Borders.Height); - - //don't draw any shadows if the light doesn't overlap with the borders of the sub - if (!MathUtils.CircleIntersectsRectangle(lightPos, TextureRange, subBorders)) - { - if (chList.List.Count > 0) NeedsRecalculation = true; - chList.List.Clear(); - continue; - } - - //recalculate vertices if the subs have moved > 5 px relative to each other - Vector2 diff = ParentSub.WorldPosition - sub.WorldPosition; - if (!diffToSub.TryGetValue(sub, out Vector2 prevDiff)) - { - diffToSub.Add(sub, diff); - NeedsRecalculation = true; - } - else if (Vector2.DistanceSquared(diff, prevDiff) > 5.0f * 5.0f) - { - diffToSub[sub] = diff; - NeedsRecalculation = true; - } - - RefreshConvexHullList(chList, lightPos, sub); - } + chList = ch; + break; } } + + //not found -> create one + if (chList == null) + { + chList = new ConvexHullList(sub); + hullsInRange.Add(chList); + NeedsRecalculation = true; + } + + foreach (var ch in chList.List) + { + if (ch.LastVertexChangeTime > lastRecalculationTime && !chList.IsHidden.Contains(ch)) + { + NeedsRecalculation = true; + break; + } + } + + Vector2 lightPos = position; + if (ParentSub == null) + { + //light and the convexhulls are both outside + if (sub == null) + { + if (NeedsHullCheck) + { + RefreshConvexHullList(chList, lightPos, null); + } + } + //light is outside, convexhulls inside a sub + else + { + lightPos -= sub.Position; + + Rectangle subBorders = sub.Borders; + subBorders.Location += sub.HiddenSubPosition.ToPoint() - new Point(0, sub.Borders.Height); + + //only draw if the light overlaps with the sub + if (!MathUtils.CircleIntersectsRectangle(lightPos, TextureRange, subBorders)) + { + if (chList.List.Count > 0) { NeedsRecalculation = true; } + chList.List.Clear(); + return; + } + + RefreshConvexHullList(chList, lightPos, sub); + } + } + else + { + //light is inside, convexhull outside + if (sub == null) { return; } + + //light and convexhull are both inside the same sub + if (sub == ParentSub) + { + if (NeedsHullCheck) + { + RefreshConvexHullList(chList, lightPos, sub); + } + } + //light and convexhull are inside different subs + else + { + if (sub.DockedTo.Contains(ParentSub) && !NeedsHullCheck) { return; } + + lightPos -= (sub.Position - ParentSub.Position); + + Rectangle subBorders = sub.Borders; + subBorders.Location += sub.HiddenSubPosition.ToPoint() - new Point(0, sub.Borders.Height); + + //don't draw any shadows if the light doesn't overlap with the borders of the sub + if (!MathUtils.CircleIntersectsRectangle(lightPos, TextureRange, subBorders)) + { + if (chList.List.Count > 0) { NeedsRecalculation = true; } + chList.List.Clear(); + return; + } + + //recalculate vertices if the subs have moved > 5 px relative to each other + Vector2 diff = ParentSub.WorldPosition - sub.WorldPosition; + if (!diffToSub.TryGetValue(sub, out Vector2 prevDiff)) + { + diffToSub.Add(sub, diff); + NeedsRecalculation = true; + } + else if (Vector2.DistanceSquared(diff, prevDiff) > 5.0f * 5.0f) + { + diffToSub[sub] = diff; + NeedsRecalculation = true; + } + + RefreshConvexHullList(chList, lightPos, sub); + } + } } private List FindRaycastHits() diff --git a/Barotrauma/BarotraumaClient/ClientSource/Map/LinkedSubmarine.cs b/Barotrauma/BarotraumaClient/ClientSource/Map/LinkedSubmarine.cs index 4c96fb6a2..2dc444032 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Map/LinkedSubmarine.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Map/LinkedSubmarine.cs @@ -75,10 +75,12 @@ namespace Barotrauma if (linkedTo.Contains(entity)) { linkedTo.Remove(entity); + entity.linkedTo.Remove(this); } else { linkedTo.Add(entity); + if (!entity.linkedTo.Contains(this)) { entity.linkedTo.Add(this); } } } } diff --git a/Barotrauma/BarotraumaClient/ClientSource/Map/Structure.cs b/Barotrauma/BarotraumaClient/ClientSource/Map/Structure.cs index d8df8b2a9..55bba4cda 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Map/Structure.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Map/Structure.cs @@ -30,6 +30,9 @@ namespace Barotrauma { return false; } + + if (!SubEditorScreen.IsLayerVisible(this)) { return false; } + return HasBody ? ShowWalls : ShowStructures; } } @@ -244,8 +247,10 @@ namespace Barotrauma public override void Draw(SpriteBatch spriteBatch, bool editing, bool back = true) { if (prefab.sprite == null) { return; } + if (editing) { + if (!SubEditorScreen.IsLayerVisible(this)) { return; } if (!HasBody && !ShowStructures) { return; } if (HasBody && !ShowWalls) { return; } } @@ -273,6 +278,7 @@ namespace Barotrauma if (prefab.sprite == null) { return; } if (editing) { + if (!SubEditorScreen.IsLayerVisible(this)) { return; } if (!HasBody && !ShowStructures) { return; } if (HasBody && !ShowWalls) { return; } } @@ -285,13 +291,11 @@ namespace Barotrauma //color = Color.Lerp(color, Color.Gold, 0.5f); color = spriteColor; - - Vector2 rectSize = rect.Size.ToVector2(); if (BodyWidth > 0.0f) { rectSize.X = BodyWidth; } if (BodyHeight > 0.0f) { rectSize.Y = BodyHeight; } - Vector2 bodyPos = WorldPosition + BodyOffset; + Vector2 bodyPos = WorldPosition + BodyOffset * Scale; GUI.DrawRectangle(spriteBatch, new Vector2(bodyPos.X, -bodyPos.Y), rectSize.X, rectSize.Y, BodyRotation, Color.White, thickness: Math.Max(1, (int)(2 / Screen.Selected.Cam.Zoom))); @@ -465,7 +469,8 @@ namespace Barotrauma public void UpdateSpriteStates(float deltaTime) { - DecorativeSprite.UpdateSpriteStates(Prefab.DecorativeSpriteGroups, spriteAnimState, ID, deltaTime, ConditionalMatches); + if (Prefab.DecorativeSpriteGroups.Count == 0) { return; } + DecorativeSprite.UpdateSpriteStates(Prefab.DecorativeSpriteGroups, spriteAnimState, ID, deltaTime, ConditionalMatches); foreach (int spriteGroup in Prefab.DecorativeSpriteGroups.Keys) { for (int i = 0; i < Prefab.DecorativeSpriteGroups[spriteGroup].Count; i++) diff --git a/Barotrauma/BarotraumaClient/ClientSource/Map/Submarine.cs b/Barotrauma/BarotraumaClient/ClientSource/Map/Submarine.cs index 2890e470f..9f35f13be 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Map/Submarine.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Map/Submarine.cs @@ -25,14 +25,11 @@ namespace Barotrauma public readonly bool Stream; public readonly bool IgnoreMuffling; - - public string Filename - { - get { return Sound?.Filename; } - } + public readonly string Filename; public RoundSound(XElement element, Sound sound) { + Filename = sound?.Filename; Sound = sound; Stream = sound.Stream; Range = element.GetAttributeFloat("range", 1000.0f); diff --git a/Barotrauma/BarotraumaClient/ClientSource/Map/WayPoint.cs b/Barotrauma/BarotraumaClient/ClientSource/Map/WayPoint.cs index 0696a24a2..6a2abf2aa 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Map/WayPoint.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Map/WayPoint.cs @@ -146,6 +146,7 @@ namespace Barotrauma private bool IsHidden() { + if (!SubEditorScreen.IsLayerVisible(this)) { return false; } if (spawnType == SpawnType.Path) { return (!GameMain.DebugDraw && !ShowWayPoints); @@ -294,7 +295,7 @@ namespace Barotrauma else { new GUITextBlock(new RectTransform(new Vector2(1.0f, 0.2f), paddedFrame.RectTransform), TextManager.Get("Spawnpoint"), font: GUI.LargeFont); - + var spawnTypeContainer = new GUILayoutGroup(new RectTransform(new Vector2(1.0f, 0.2f), paddedFrame.RectTransform), isHorizontal: true) { Stretch = true, @@ -318,7 +319,10 @@ namespace Barotrauma }; var descText = new GUITextBlock(new RectTransform(new Vector2(1.0f, 0.2f), paddedFrame.RectTransform), - TextManager.Get("IDCardDescription"), font: GUI.SmallFont); + TextManager.Get("IDCardDescription"), font: GUI.SmallFont) + { + ToolTip = TextManager.Get("IDCardDescriptionTooltip") + }; GUITextBox propertyBox = new GUITextBox(new RectTransform(new Vector2(0.5f, 1.0f), descText.RectTransform, Anchor.CenterRight), IdCardDesc) { MaxTextLength = 150, @@ -342,7 +346,10 @@ namespace Barotrauma }; var idCardTagsText = new GUITextBlock(new RectTransform(new Vector2(1.0f, 0.2f), paddedFrame.RectTransform), - TextManager.Get("IDCardTags"), font: GUI.SmallFont); + TextManager.Get("IDCardTags"), font: GUI.SmallFont) + { + ToolTip = TextManager.Get("IDCardTagsTooltip") + }; propertyBox = new GUITextBox(new RectTransform(new Vector2(0.5f, 1.0f), idCardTagsText.RectTransform, Anchor.CenterRight), string.Join(", ", idCardTags)) { MaxTextLength = 60, @@ -414,6 +421,6 @@ namespace Barotrauma PositionEditingHUD(); return editingHUD; - } + } } } diff --git a/Barotrauma/BarotraumaClient/ClientSource/Networking/ChatMessage.cs b/Barotrauma/BarotraumaClient/ClientSource/Networking/ChatMessage.cs index d76d85470..629752439 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Networking/ChatMessage.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Networking/ChatMessage.cs @@ -78,7 +78,7 @@ namespace Barotrauma.Networking txt = orderPrefab.GetChatMessage(orderMessageInfo.TargetCharacter?.Name, targetRoom, givingOrderToSelf: orderMessageInfo.TargetCharacter == senderCharacter, orderOption: orderOption, - priority: orderMessageInfo.Priority); + isNewOrder: orderMessageInfo.IsNewOrder); if (GameMain.Client.GameStarted && Screen.Selected == GameMain.GameScreen) { diff --git a/Barotrauma/BarotraumaClient/ClientSource/Networking/GameClient.cs b/Barotrauma/BarotraumaClient/ClientSource/Networking/GameClient.cs index 1c78cf9bb..1c3b81c40 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Networking/GameClient.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Networking/GameClient.cs @@ -948,6 +948,9 @@ namespace Barotrauma.Networking case ServerPacketHeader.CREW: campaign?.ClientReadCrew(inc); break; + case ServerPacketHeader.MEDICAL: + campaign?.MedicalClinic?.ClientRead(inc); + break; case ServerPacketHeader.READY_CHECK: ReadyCheck.ClientRead(inc); break; @@ -1116,9 +1119,9 @@ namespace Barotrauma.Networking disconnectReason != DisconnectReason.InvalidVersion) { GameAnalyticsManager.AddErrorEventOnce( - "GameClient.HandleDisconnectMessage", - GameAnalyticsManager.ErrorSeverity.Debug, - "Client received a disconnect message. Reason: " + disconnectReason.ToString()); + "GameClient.HandleDisconnectMessage", + GameAnalyticsManager.ErrorSeverity.Debug, + "Client received a disconnect message. Reason: " + disconnectReason.ToString()); } if (disconnectReason == DisconnectReason.ServerFull) @@ -1271,7 +1274,15 @@ namespace Barotrauma.Networking private void ReadAchievement(IReadMessage inc) { string achievementIdentifier = inc.ReadString(); - SteamAchievementManager.UnlockAchievement(achievementIdentifier); + int amount = inc.ReadInt32(); + if (amount == 0) + { + SteamAchievementManager.UnlockAchievement(achievementIdentifier); + } + else + { + SteamAchievementManager.IncrementStat(achievementIdentifier, amount); + } } private void ReadTraitorMessage(IReadMessage inc) @@ -1471,7 +1482,7 @@ namespace Barotrauma.Networking serverSettings.LockAllDefaultWires = inc.ReadBoolean(); serverSettings.AllowRagdollButton = inc.ReadBoolean(); serverSettings.AllowLinkingWifiToChat = inc.ReadBoolean(); - GameMain.NetLobbyScreen.UsingShuttle = inc.ReadBoolean(); + bool usingShuttle = GameMain.NetLobbyScreen.UsingShuttle = inc.ReadBoolean(); GameMain.LightManager.LosMode = (LosMode)inc.ReadByte(); bool includesFinalize = inc.ReadBoolean(); inc.ReadPadBits(); GameMain.LightManager.LightingEnabled = true; @@ -1483,6 +1494,8 @@ namespace Barotrauma.Networking Task loadTask = null; var roundSummary = (GUIMessageBox.MessageBoxes.Find(c => c?.UserData is RoundSummary)?.UserData) as RoundSummary; + bool isOutpost = false; + if (gameMode != GameModePreset.MultiPlayerCampaign) { string levelSeed = inc.ReadString(); @@ -1621,6 +1634,7 @@ namespace Barotrauma.Networking { GameMain.GameSession.StartRound(levelData, mirrorLevel); } + isOutpost = levelData.Type == LevelData.LevelType.Outpost; } if (GameMain.Client?.ServerSettings?.Voting != null) @@ -1740,8 +1754,7 @@ namespace Barotrauma.Networking if (respawnAllowed) { - bool isOutpost = GameMain.GameSession?.GameMode is MultiPlayerCampaign campaign && Level.Loaded?.Type == LevelData.LevelType.Outpost; - respawnManager = new RespawnManager(this, GameMain.NetLobbyScreen.UsingShuttle && !isOutpost ? GameMain.NetLobbyScreen.SelectedShuttle : null); + respawnManager = new RespawnManager(this, usingShuttle && !isOutpost ? GameMain.NetLobbyScreen.SelectedShuttle : null); } gameStarted = true; @@ -1872,7 +1885,7 @@ namespace Barotrauma.Networking if (int.TryParse(ownedIndexes[i], out int index)) { SubmarineInfo sub = GameMain.Client.ServerSubmarines[index]; - if (GameMain.NetLobbyScreen.CheckIfCampaignSubMatches(sub, "owned")) + if (GameMain.NetLobbyScreen.CheckIfCampaignSubMatches(sub, NetLobbyScreen.SubmarineDeliveryData.Owned)) { GameMain.GameSession.OwnedSubmarines.Add(sub); } @@ -1888,7 +1901,7 @@ namespace Barotrauma.Networking if (int.TryParse(ownedIndexes[i], out index)) { SubmarineInfo sub = GameMain.Client.ServerSubmarines[index]; - if (GameMain.NetLobbyScreen.CheckIfCampaignSubMatches(sub, "owned")) + if (GameMain.NetLobbyScreen.CheckIfCampaignSubMatches(sub, NetLobbyScreen.SubmarineDeliveryData.Owned)) { GameMain.NetLobbyScreen.ServerOwnedSubmarines.Add(sub); } @@ -2090,13 +2103,6 @@ namespace Barotrauma.Networking string selectShuttleName = inc.ReadString(); string selectShuttleHash = inc.ReadString(); - UInt16 campaignSubmarineIndexCount = inc.ReadUInt16(); - List campaignSubIndices = new List(); - for (int i = 0; i< campaignSubmarineIndexCount; i++) - { - campaignSubIndices.Add(inc.ReadUInt16()); - } - bool allowSubVoting = inc.ReadBoolean(); bool allowModeVoting = inc.ReadBoolean(); @@ -2157,16 +2163,11 @@ namespace Barotrauma.Networking if (GameMain.Client.IsServerOwner) RequestSelectMode(modeIndex); } - if (campaignSubIndices != null) + if (GameMain.NetLobbyScreen.SelectedMode == GameModePreset.MultiPlayerCampaign) { - GameMain.NetLobbyScreen.CampaignSubmarines = new List(); - foreach (UInt16 campaignSubIndex in campaignSubIndices) + foreach (SubmarineInfo sub in ServerSubmarines.Where(s => !ServerSettings.HiddenSubs.Contains(s.Name))) { - SubmarineInfo sub = GameMain.Client.ServerSubmarines[campaignSubIndex]; - if (GameMain.NetLobbyScreen.CheckIfCampaignSubMatches(sub, "campaign")) - { - GameMain.NetLobbyScreen.CampaignSubmarines.Add(sub); - } + GameMain.NetLobbyScreen.CheckIfCampaignSubMatches(sub, NetLobbyScreen.SubmarineDeliveryData.Campaign); } } @@ -2599,7 +2600,6 @@ namespace Barotrauma.Networking NetLobbyScreen.FailedSubInfo failedCampaignSub = GameMain.NetLobbyScreen.FailedCampaignSubs.Find(s => s.Name == newSub.Name && s.Hash == newSub.MD5Hash.Hash); if (failedCampaignSub != default) { - GameMain.NetLobbyScreen.CampaignSubmarines.Add(newSub); GameMain.NetLobbyScreen.FailedCampaignSubs.Remove(failedCampaignSub); } diff --git a/Barotrauma/BarotraumaClient/ClientSource/Networking/Primitives/Peers/SteamP2PClientPeer.cs b/Barotrauma/BarotraumaClient/ClientSource/Networking/Primitives/Peers/SteamP2PClientPeer.cs index 70e9b0728..4100bb358 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Networking/Primitives/Peers/SteamP2PClientPeer.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Networking/Primitives/Peers/SteamP2PClientPeer.cs @@ -100,7 +100,7 @@ namespace Barotrauma.Networking if (!isActive) { return; } if (steamId != hostSteamId) { return; } Close($"SteamP2P connection failed: {error}"); - OnDisconnectMessageReceived?.Invoke($"SteamP2P connection failed: {error}"); + OnDisconnectMessageReceived?.Invoke($"{DisconnectReason.SteamP2PError}/SteamP2P connection failed: {error}"); } private void OnP2PData(ulong steamId, byte[] data, int dataLength) @@ -167,14 +167,14 @@ namespace Barotrauma.Networking if (state == null) { Close("SteamP2P connection could not be established"); - OnDisconnectMessageReceived?.Invoke("SteamP2P connection could not be established"); + OnDisconnectMessageReceived?.Invoke(DisconnectReason.SteamP2PError.ToString()); } else { if (state?.P2PSessionError != Steamworks.P2PSessionError.None) { Close($"SteamP2P error code: {state?.P2PSessionError}"); - OnDisconnectMessageReceived?.Invoke($"SteamP2P error code: {state?.P2PSessionError}"); + OnDisconnectMessageReceived?.Invoke($"{DisconnectReason.SteamP2PError}/SteamP2P error code: {state?.P2PSessionError}"); } } connectionStatusTimer = 1.0f; @@ -210,7 +210,7 @@ namespace Barotrauma.Networking if (timeout < 0.0) { Close("Timed out"); - OnDisconnectMessageReceived?.Invoke(""); + OnDisconnectMessageReceived?.Invoke(DisconnectReason.SteamP2PTimeOut.ToString()); return; } @@ -349,13 +349,19 @@ namespace Barotrauma.Networking outMsg.Write((byte)PacketHeader.IsDisconnectMessage); outMsg.Write(msg ?? "Disconnected"); - Steamworks.SteamNetworking.SendP2PPacket(hostSteamId, outMsg.Buffer, outMsg.LengthBytes, 0, Steamworks.P2PSend.Reliable); - sentBytes += outMsg.LengthBytes; + try + { + Steamworks.SteamNetworking.SendP2PPacket(hostSteamId, outMsg.Buffer, outMsg.LengthBytes, 0, Steamworks.P2PSend.Reliable); + sentBytes += outMsg.LengthBytes; + } + catch (Exception e) + { + DebugConsole.ThrowError("Failed to send a disconnect message to the server using SteamP2P.", e); + } Thread.Sleep(100); Steamworks.SteamNetworking.ResetActions(); - Steamworks.SteamNetworking.CloseP2PSessionWithUser(hostSteamId); steamAuthTicket?.Cancel(); steamAuthTicket = null; diff --git a/Barotrauma/BarotraumaClient/ClientSource/Networking/ServerInfo.cs b/Barotrauma/BarotraumaClient/ClientSource/Networking/ServerInfo.cs index 2b25e89a2..f0abd892a 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Networking/ServerInfo.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Networking/ServerInfo.cs @@ -81,16 +81,15 @@ namespace Barotrauma.Networking public bool ContentPackagesMatch() { - var myContentPackages = ContentPackage.AllPackages; //make sure we have all the packages the server requires if (ContentPackageHashes.Count != ContentPackageWorkshopIds.Count) { return false; } for (int i = 0; i < ContentPackageWorkshopIds.Count; i++) { string hash = ContentPackageHashes[i]; UInt64 id = ContentPackageWorkshopIds[i]; - if (!myContentPackages.Any(myPackage => myPackage.MD5hash.Hash == hash)) + if (!GameMain.ServerListScreen.ContentPackagesByHash.ContainsKey(hash)) { - if (myContentPackages.Any(p => p.SteamWorkshopId == id)) { return false; } + if (GameMain.ServerListScreen.ContentPackagesByWorkshopId.ContainsKey(id)) { return false; } if (id == 0) { return false; } } } @@ -98,12 +97,6 @@ namespace Barotrauma.Networking return true; } - public bool ContentPackagesMatch(IEnumerable myContentPackageHashes) - { - HashSet contentPackageHashes = new HashSet(ContentPackageHashes); - return contentPackageHashes.SetEquals(myContentPackageHashes); - } - public void CreatePreviewWindow(GUIFrame frame) { if (frame == null) { return; } @@ -428,7 +421,7 @@ namespace Barotrauma.Networking return; } - var rules = ((Task>)t).Result; + t.TryGetResult(out Dictionary rules); SteamManager.AssignServerRulesToServerInfo(rules, this); onServerRulesReceived(this); diff --git a/Barotrauma/BarotraumaClient/ClientSource/Networking/ServerSettings.cs b/Barotrauma/BarotraumaClient/ClientSource/Networking/ServerSettings.cs index d345d2a98..783d52326 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Networking/ServerSettings.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Networking/ServerSettings.cs @@ -94,10 +94,10 @@ namespace Barotrauma.Networking public void ClientAdminRead(IReadMessage incMsg) { - int count = incMsg.ReadUInt16(); - for (int i = 0; i < count; i++) + while (true) { UInt32 key = incMsg.ReadUInt32(); + if (key == 0) { break; } if (netProperties.ContainsKey(key)) { bool changedLocally = netProperties[key].ChangedLocally; @@ -153,8 +153,11 @@ namespace Barotrauma.Networking { ReadExtraCargo(incMsg); } - - ReadHiddenSubs(incMsg); + + if (requiredFlags.HasFlag(NetFlags.HiddenSubs)) + { + ReadHiddenSubs(incMsg); + } GameMain.NetLobbyScreen.UpdateSubVisibility(); bool isAdmin = incMsg.ReadBoolean(); diff --git a/Barotrauma/BarotraumaClient/ClientSource/Networking/SteamManager.cs b/Barotrauma/BarotraumaClient/ClientSource/Networking/SteamManager.cs index 29295f520..a72a282f0 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Networking/SteamManager.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Networking/SteamManager.cs @@ -143,8 +143,7 @@ namespace Barotrauma.Steam return; } - currentLobby = ((Task)lobby).Result; - + lobby.TryGetResult(out currentLobby); if (currentLobby == null) { DebugConsole.ThrowError("Failed to create Steam lobby: returned lobby was null"); @@ -250,7 +249,7 @@ namespace Barotrauma.Steam TaskPool.Add("JoinLobbyAsync", Steamworks.SteamMatchmaking.JoinLobbyAsync(lobbyID), (lobby) => { - currentLobby = ((Task)lobby).Result; + lobby.TryGetResult(out currentLobby); lobbyState = LobbyState.Joined; lobbyID = (currentLobby?.Id).Value; if (joinServer) @@ -293,10 +292,11 @@ namespace Barotrauma.Steam taskDone(); return; } - var lobbies = ((Task>)t).Result; - if (lobbies != null) + t.TryGetResult(out List lobbies); + IEnumerable lobbyAddCoroutine() { - foreach (var lobby in lobbies) + int i = 0; + foreach (var lobby in lobbies ?? Enumerable.Empty()) { if (string.IsNullOrEmpty(lobby.GetData("name"))) { continue; } @@ -312,9 +312,13 @@ namespace Barotrauma.Steam AssignLobbyDataToServerInfo(lobby, serverInfo); addToServerList(serverInfo); + i++; + if (i >= 16) { yield return CoroutineStatus.Running; i = 0; } } + taskDone(); + yield return CoroutineStatus.Success; } - taskDone(); + CoroutineManager.StartCoroutine(lobbyAddCoroutine()); }); Steamworks.ServerList.Internet serverQuery = new Steamworks.ServerList.Internet(); @@ -344,13 +348,10 @@ namespace Barotrauma.Steam return; } - var rules = ((Task>)t).Result; + t.TryGetResult(out Dictionary rules); AssignServerRulesToServerInfo(rules, serverInfo); - CrossThread.RequestExecutionOnMainThread(() => - { - addToServerList(serverInfo); - }); + addToServerList(serverInfo); }); } else @@ -618,7 +619,10 @@ namespace Barotrauma.Steam .WithLongDescription(); if (requireTags != null) { query = query.WithTags(requireTags); } - TaskPool.Add("GetSubscribedWorkshopItems", GetWorkshopItemsAsync(query), (task) => { onItemsFound?.Invoke(((Task>)task).Result); }); + TaskPool.Add("GetSubscribedWorkshopItems", GetWorkshopItemsAsync(query), (task) => + { + task.TryGetResult(out List result); onItemsFound?.Invoke(result); + }); } public static void GetPopularWorkshopItems(Action> onItemsFound, int amount, List requireTags = null) @@ -632,7 +636,7 @@ namespace Barotrauma.Steam TaskPool.Add("GetPopularWorkshopItems", GetWorkshopItemsAsync(query, amount, (item) => !item.IsSubscribed), (task) => { - var entries = ((Task>)task).Result; + task.TryGetResult(out List entries); //count the number of each unique tag foreach (var item in entries) @@ -677,7 +681,10 @@ namespace Barotrauma.Steam .WithLongDescription(); if (requireTags != null) query.WithTags(requireTags); - TaskPool.Add("GetPublishedWorkshopItems", GetWorkshopItemsAsync(query), (task) => { onItemsFound?.Invoke(((Task>)task).Result); }); + TaskPool.Add("GetPublishedWorkshopItems", GetWorkshopItemsAsync(query), (task) => + { + task.TryGetResult(out List result); onItemsFound?.Invoke(result); + }); } private static readonly HashSet pendingWorkshopSubscriptions = new HashSet(); @@ -724,7 +731,7 @@ namespace Barotrauma.Steam } else { - var item = ((Task)t).Result; + t.TryGetResult(out Steamworks.Ugc.Item? item); if (item != null) { if (item?.IsInstalled ?? false) @@ -1077,7 +1084,7 @@ namespace Barotrauma.Steam GameMain.SteamWorkshopScreen?.SetReinstallButtonStatus(item, true, GUI.Style.Red); return; } - string errorMsg = ((Task)task).Result; + task.TryGetResult(out string errorMsg); if (!string.IsNullOrWhiteSpace(errorMsg)) { DebugConsole.ThrowError($"Failed to copy \"{item.Title}\": {errorMsg}"); diff --git a/Barotrauma/BarotraumaClient/ClientSource/Screens/CampaignSetupUI/MultiPlayerCampaignSetupUI.cs b/Barotrauma/BarotraumaClient/ClientSource/Screens/CampaignSetupUI/MultiPlayerCampaignSetupUI.cs index afe8fb55a..d4c3b4793 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Screens/CampaignSetupUI/MultiPlayerCampaignSetupUI.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Screens/CampaignSetupUI/MultiPlayerCampaignSetupUI.cs @@ -246,6 +246,8 @@ namespace Barotrauma foreach (string saveFile in saveFiles) { + if (string.IsNullOrEmpty(saveFile)) { continue; } + string fileName = saveFile; string subName = ""; string saveTime = ""; diff --git a/Barotrauma/BarotraumaClient/ClientSource/Screens/CampaignUI.cs b/Barotrauma/BarotraumaClient/ClientSource/Screens/CampaignUI.cs index 27efd044d..472063ab4 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Screens/CampaignUI.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Screens/CampaignUI.cs @@ -45,6 +45,8 @@ namespace Barotrauma public UpgradeStore UpgradeStore { get; set; } + public MedicalClinicUI MedicalClinic { get; set; } + public CampaignUI(CampaignMode campaign, GUIComponent container) { Campaign = campaign; @@ -270,6 +272,9 @@ namespace Barotrauma // Submarine buying tab tabs[(int)CampaignMode.InteractionType.PurchaseSub] = new GUIFrame(new RectTransform(Vector2.One, container.RectTransform, Anchor.TopLeft), color: Color.Black * 0.9f); + tabs[(int)CampaignMode.InteractionType.MedicalClinic] = new GUIFrame(new RectTransform(Vector2.One, container.RectTransform), color: Color.Black * 0.9f); + MedicalClinic = new MedicalClinicUI(Campaign.MedicalClinic, GetTabContainer(CampaignMode.InteractionType.MedicalClinic)); + // mission info ------------------------------------------------------------------------- locationInfoPanel = new GUIFrame(new RectTransform(new Vector2(0.35f, 0.75f), GetTabContainer(CampaignMode.InteractionType.Map).RectTransform, Anchor.CenterRight) @@ -355,6 +360,10 @@ namespace Barotrauma case CampaignMode.InteractionType.Store: Store?.Update(deltaTime); break; + + case CampaignMode.InteractionType.MedicalClinic: + MedicalClinic?.Update(deltaTime); + break; } } diff --git a/Barotrauma/BarotraumaClient/ClientSource/Screens/EventEditor/EventEditorScreen.cs b/Barotrauma/BarotraumaClient/ClientSource/Screens/EventEditor/EventEditorScreen.cs index d85bf42ee..f54abb64b 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Screens/EventEditor/EventEditorScreen.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Screens/EventEditor/EventEditorScreen.cs @@ -247,16 +247,6 @@ namespace Barotrauma return msgBox; } - private void NotifyPrompt(string header, string body) - { - GUIMessageBox msgBox = new GUIMessageBox(header, body, new[] { TextManager.Get("Ok") }, new Vector2(0.2f, 0.175f), minSize: new Point(300, 175)); - msgBox.Buttons[0].OnClicked = delegate - { - msgBox.Close(); - return true; - }; - } - private bool SaveProjectToFile(GUIButton button, object o) { string directory = Path.GetFullPath("EventProjects"); @@ -315,7 +305,7 @@ namespace Barotrauma CreateNodes(prefab.ConfigElement, ref hadNodes); if (!hadNodes) { - NotifyPrompt(TextManager.Get("EventEditor.RandomGenerationHeader"), TextManager.Get("EventEditor.RandomGenerationBody")); + GUI.NotifyPrompt(TextManager.Get("EventEditor.RandomGenerationHeader"), TextManager.Get("EventEditor.RandomGenerationBody")); } return true; }); diff --git a/Barotrauma/BarotraumaClient/ClientSource/Screens/NetLobbyScreen.cs b/Barotrauma/BarotraumaClient/ClientSource/Screens/NetLobbyScreen.cs index 794643a21..e6318fc05 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Screens/NetLobbyScreen.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Screens/NetLobbyScreen.cs @@ -221,7 +221,6 @@ namespace Barotrauma public SubmarineInfo SelectedShuttle => ShuttleList.SelectedData as SubmarineInfo; public MultiPlayerCampaignSetupUI CampaignSetupUI; - public List CampaignSubmarines = new List(); // Passed onto the gamesession when created public List ServerOwnedSubmarines = new List(); @@ -611,6 +610,7 @@ namespace Barotrauma { OnClicked = (btn, obj) => { + if (GameMain.Client == null) { return true; } GameMain.Client.RequestStartRound(); CoroutineManager.StartCoroutine(WaitForStartRound(StartButton), "WaitForStartRound"); return true; @@ -628,7 +628,7 @@ namespace Barotrauma { OnSelected = (tickBox) => { - GameMain.Client.ServerSettings.ClientAdminWrite(ServerSettings.NetFlags.Misc, autoRestart: tickBox.Selected); + GameMain.Client?.ServerSettings.ClientAdminWrite(ServerSettings.NetFlags.Misc, autoRestart: tickBox.Selected); return true; } }; @@ -655,6 +655,7 @@ namespace Barotrauma }; ServerName.OnDeselected += (textBox, key) => { + if (GameMain.Client == null) { return; } if (!textBox.Readonly) { GameMain.Client.ServerSettings.ClientAdminWrite(ServerSettings.NetFlags.Name); @@ -669,6 +670,7 @@ namespace Barotrauma ToolTip = TextManager.Get("addtofavorites"), OnSelected = (tickbox) => { + if (GameMain.Client == null) { return true; } ServerInfo info = GameMain.Client.ServerSettings.GetServerListInfo(); if (tickbox.Selected) { @@ -766,6 +768,7 @@ namespace Barotrauma }; ServerMessage.OnDeselected += (textBox, key) => { + if (GameMain.Client == null) { return; } if (!textBox.Readonly) { GameMain.Client?.ServerSettings?.ClientAdminWrite(ServerSettings.NetFlags.Message); @@ -849,7 +852,7 @@ namespace Barotrauma Selected = true, OnSelected = (GUITickBox box) => { - GameMain.Client.ServerSettings.ClientAdminWrite(ServerSettings.NetFlags.Misc, useRespawnShuttle: box.Selected); + GameMain.Client?.ServerSettings.ClientAdminWrite(ServerSettings.NetFlags.Misc, useRespawnShuttle: box.Selected); return true; } }; @@ -868,7 +871,7 @@ namespace Barotrauma { OnSelected = (component, obj) => { - GameMain.Client.RequestSelectSub(component.Parent.GetChildIndex(component), isShuttle: true); + GameMain.Client?.RequestSelectSub(component.Parent.GetChildIndex(component), isShuttle: true); return true; } }; @@ -970,7 +973,7 @@ namespace Barotrauma { OnClicked = (_, __) => { - GameMain.Client.RequestSelectMode(ModeList.Content.GetChildIndex(ModeList.Content.GetChildByUserData(GameModePreset.Sandbox))); + GameMain.Client?.RequestSelectMode(ModeList.Content.GetChildIndex(ModeList.Content.GetChildByUserData(GameModePreset.Sandbox))); return true; } }; @@ -1026,7 +1029,7 @@ namespace Barotrauma { int missionTypeOr = tickbox.Selected ? (int)tickbox.UserData : (int)MissionType.None; int missionTypeAnd = (int)MissionType.All & (!tickbox.Selected ? (~(int)tickbox.UserData) : (int)MissionType.All); - GameMain.Client.ServerSettings.ClientAdminWrite(ServerSettings.NetFlags.Misc, (int)missionTypeOr, (int)missionTypeAnd); + GameMain.Client?.ServerSettings.ClientAdminWrite(ServerSettings.NetFlags.Misc, (int)missionTypeOr, (int)missionTypeAnd); return true; } }; @@ -1059,7 +1062,7 @@ namespace Barotrauma SeedBox = new GUITextBox(new RectTransform(new Vector2(0.5f, 1.0f), seedLabel.RectTransform, Anchor.CenterRight)); SeedBox.OnDeselected += (textBox, key) => { - GameMain.Client.ServerSettings.ClientAdminWrite(ServerSettings.NetFlags.LevelSeed); + GameMain.Client?.ServerSettings.ClientAdminWrite(ServerSettings.NetFlags.LevelSeed); }; clientDisabledElements.Add(SeedBox); LevelSeed = ToolBox.RandomSeed(8); @@ -1080,7 +1083,7 @@ namespace Barotrauma ToolTip = TextManager.Get("leveldifficultyexplanation"), OnReleased = (scrollbar, value) => { - GameMain.Client.ServerSettings.ClientAdminWrite(ServerSettings.NetFlags.Misc, levelDifficulty: scrollbar.BarScrollValue); + GameMain.Client?.ServerSettings.ClientAdminWrite(ServerSettings.NetFlags.Misc, levelDifficulty: scrollbar.BarScrollValue); return true; } }; @@ -1112,8 +1115,7 @@ namespace Barotrauma { OnClicked = (button, obj) => { - GameMain.Client.ServerSettings.ClientAdminWrite(ServerSettings.NetFlags.Misc, traitorSetting: -1); - + GameMain.Client?.ServerSettings.ClientAdminWrite(ServerSettings.NetFlags.Misc, traitorSetting: -1); return true; } }; @@ -1124,8 +1126,7 @@ namespace Barotrauma { OnClicked = (button, obj) => { - GameMain.Client.ServerSettings.ClientAdminWrite(ServerSettings.NetFlags.Misc, traitorSetting: 1); - + GameMain.Client?.ServerSettings.ClientAdminWrite(ServerSettings.NetFlags.Misc, traitorSetting: 1); return true; } }; @@ -1143,7 +1144,7 @@ namespace Barotrauma { OnClicked = (button, obj) => { - GameMain.Client.ServerSettings.ClientAdminWrite(ServerSettings.NetFlags.Misc, botCount: -1); + GameMain.Client?.ServerSettings.ClientAdminWrite(ServerSettings.NetFlags.Misc, botCount: -1); return true; } }; @@ -1153,7 +1154,7 @@ namespace Barotrauma { OnClicked = (button, obj) => { - GameMain.Client.ServerSettings.ClientAdminWrite(ServerSettings.NetFlags.Misc, botCount: 1); + GameMain.Client?.ServerSettings.ClientAdminWrite(ServerSettings.NetFlags.Misc, botCount: 1); return true; } }; @@ -1169,7 +1170,7 @@ namespace Barotrauma { OnClicked = (button, obj) => { - GameMain.Client.ServerSettings.ClientAdminWrite(ServerSettings.NetFlags.Misc, botSpawnMode: -1); + GameMain.Client?.ServerSettings.ClientAdminWrite(ServerSettings.NetFlags.Misc, botSpawnMode: -1); return true; } }; @@ -1179,7 +1180,7 @@ namespace Barotrauma { OnClicked = (button, obj) => { - GameMain.Client.ServerSettings.ClientAdminWrite(ServerSettings.NetFlags.Misc, botSpawnMode: 1); + GameMain.Client?.ServerSettings.ClientAdminWrite(ServerSettings.NetFlags.Misc, botSpawnMode: 1); return true; } }; @@ -3576,7 +3577,13 @@ namespace Barotrauma return false; } - public bool CheckIfCampaignSubMatches(SubmarineInfo serverSubmarine, string deliveryData) + public enum SubmarineDeliveryData + { + Owned, + Campaign + } + + public bool CheckIfCampaignSubMatches(SubmarineInfo serverSubmarine, SubmarineDeliveryData deliveryData) { if (GameMain.Client == null) return false; @@ -3630,11 +3637,11 @@ namespace Barotrauma { FailedSubInfo fileInfo = (FailedSubInfo)userdata; - if (deliveryData == "owned") //owned!!!! + if (deliveryData == SubmarineDeliveryData.Owned) { FailedOwnedSubs.Add(fileInfo); } - else if (deliveryData == "campaign") + else if (deliveryData == SubmarineDeliveryData.Campaign) { FailedCampaignSubs.Add(fileInfo); } diff --git a/Barotrauma/BarotraumaClient/ClientSource/Screens/ServerListScreen.cs b/Barotrauma/BarotraumaClient/ClientSource/Screens/ServerListScreen.cs index 9c004b7e3..461a8ba29 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Screens/ServerListScreen.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Screens/ServerListScreen.cs @@ -7,6 +7,7 @@ using Microsoft.Xna.Framework.Graphics; using RestSharp; using System; using System.Collections.Generic; +using System.Collections.Immutable; using System.Linq; using System.Net; using System.Net.NetworkInformation; @@ -21,6 +22,11 @@ namespace Barotrauma //how often the client is allowed to refresh servers private readonly TimeSpan AllowedRefreshInterval = new TimeSpan(0, 0, 3); + public ImmutableDictionary ContentPackagesByWorkshopId { get; private set; } + = ImmutableDictionary.Empty; + public ImmutableDictionary ContentPackagesByHash { get; private set; } + = ImmutableDictionary.Empty; + private GUIFrame menu; private GUIListBox serverList; @@ -1011,6 +1017,17 @@ namespace Barotrauma public override void Select() { base.Select(); + + ContentPackagesByWorkshopId = ContentPackage.AllPackages + .Select(p => new KeyValuePair(p.SteamWorkshopId, p)) + .Where(p => p.Key != 0) + .GroupBy(x => x.Key).Select(g => g.First()) + .ToImmutableDictionary(); + ContentPackagesByHash = ContentPackage.AllPackages + .Select(p => new KeyValuePair(p.MD5hash.Hash, p)) + .GroupBy(x => x.Key).Select(g => g.First()) + .ToImmutableDictionary(); + SelectedTab = ServerListTab.All; LoadServerFilters(GameMain.Config.ServerFilterElement); if (GameSettings.ShowOffensiveServerPrompt) @@ -1039,6 +1056,8 @@ namespace Barotrauma public override void Deselect() { + ContentPackagesByWorkshopId = ImmutableDictionary.Empty; + ContentPackagesByHash = ImmutableDictionary.Empty; base.Deselect(); GameMain.Config.SaveNewPlayerConfig(); @@ -1491,7 +1510,7 @@ namespace Barotrauma } TaskPool.Add($"Get{avatarSize}AvatarAsync", avatarFunc(friend.Id), (task) => { - Steamworks.Data.Image? img = ((Task)task).Result; + if (!task.TryGetResult(out Steamworks.Data.Image? img)) { return; } if (!img.HasValue) { return; } var avatarImage = img.Value; @@ -2203,7 +2222,7 @@ namespace Barotrauma TaskPool.PrintTaskExceptions(t, $"Failed to retrieve Workshop item info (ID {entry.Id})"); return; } - Steamworks.Ugc.Item? item = ((Task)t).Result; + t.TryGetResult(out Steamworks.Ugc.Item? item); if (!item.HasValue) { @@ -2313,7 +2332,7 @@ namespace Barotrauma { var info = obj.Item1; var text = obj.Item2; - info.Ping = ((Task)rtt).Result; info.PingChecked = true; + rtt.TryGetResult(out info.Ping); info.PingChecked = true; text.TextColor = GetPingTextColor(info.Ping); text.Text = info.Ping > -1 ? info.Ping.ToString() : "?"; lock (activePings) diff --git a/Barotrauma/BarotraumaClient/ClientSource/Screens/SteamWorkshopScreen.cs b/Barotrauma/BarotraumaClient/ClientSource/Screens/SteamWorkshopScreen.cs index 94064f687..60cdf08a0 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Screens/SteamWorkshopScreen.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Screens/SteamWorkshopScreen.cs @@ -854,7 +854,7 @@ namespace Barotrauma (var it, var lb) = tuple; if (lb.Content.FindChild(item)?.GetChildByUserData("previewimage") is GUIImage previewImage) { - previewImage.Sprite = ((Task)task).Result; + if (task.TryGetResult(out Sprite sprite)) { previewImage.Sprite = sprite; } } else { diff --git a/Barotrauma/BarotraumaClient/ClientSource/Screens/SubEditorScreen.cs b/Barotrauma/BarotraumaClient/ClientSource/Screens/SubEditorScreen.cs index 1550a1afa..e90cfc275 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Screens/SubEditorScreen.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Screens/SubEditorScreen.cs @@ -99,6 +99,10 @@ namespace Barotrauma private GUIFrame previouslyUsedPanel; private GUIListBox previouslyUsedList; + private GUIButton visibilityButton; + private GUIFrame layerPanel; + private GUIListBox layerList; + private GUIFrame undoBufferPanel; private GUIFrame undoBufferDisclaimer; private GUIListBox undoBufferList; @@ -234,6 +238,8 @@ namespace Barotrauma public bool WiringMode => mode == Mode.Wiring; + public static readonly Dictionary Layers = new Dictionary(); + public SubEditorScreen() { cam = new Camera @@ -320,19 +326,34 @@ namespace Barotrauma new GUIFrame(new RectTransform(new Vector2(0.01f, 0.9f), paddedTopPanel.RectTransform), style: "VerticalLine"); - var visibilityButton = new GUIButton(new RectTransform(new Vector2(0.9f, 0.9f), paddedTopPanel.RectTransform, scaleBasis: ScaleBasis.BothHeight), "", style: "SetupVisibilityButton") + visibilityButton = new GUIButton(new RectTransform(new Vector2(0.9f, 0.9f), paddedTopPanel.RectTransform, scaleBasis: ScaleBasis.BothHeight), "", style: "SetupVisibilityButton") { ToolTip = TextManager.Get("SubEditorVisibilityButton") + '\n' + TextManager.Get("SubEditorVisibilityToolTip"), OnClicked = (btn, userData) => { previouslyUsedPanel.Visible = false; undoBufferPanel.Visible = false; + layerPanel.Visible = false; showEntitiesPanel.Visible = !showEntitiesPanel.Visible; showEntitiesPanel.RectTransform.AbsoluteOffset = new Point(Math.Max(Math.Max(btn.Rect.X, entityCountPanel.Rect.Right), saveAssemblyFrame.Rect.Right), TopPanel.Rect.Height); return true; } }; + new GUIButton(new RectTransform(new Vector2(0.9f, 0.9f), paddedTopPanel.RectTransform, scaleBasis: ScaleBasis.BothHeight), "", style: "EditorLayerButton") + { + ToolTip = TextManager.Get("editor.layer.button") + '\n' + TextManager.Get("editor.layer.tooltip"), + OnClicked = (btn, userData) => + { + previouslyUsedPanel.Visible = false; + showEntitiesPanel.Visible = false; + undoBufferPanel.Visible = false; + layerPanel.Visible = !layerPanel.Visible; + layerPanel.RectTransform.AbsoluteOffset = new Point(Math.Max(Math.Max(btn.Rect.X, entityCountPanel.Rect.Right), saveAssemblyFrame.Rect.Right), TopPanel.Rect.Height); + return true; + } + }; + var previouslyUsedButton = new GUIButton(new RectTransform(new Vector2(0.9f, 0.9f), paddedTopPanel.RectTransform, scaleBasis: ScaleBasis.BothHeight), "", style: "RecentlyUsedButton") { ToolTip = TextManager.Get("PreviouslyUsedLabel"), @@ -340,6 +361,7 @@ namespace Barotrauma { showEntitiesPanel.Visible = false; undoBufferPanel.Visible = false; + layerPanel.Visible = false; previouslyUsedPanel.Visible = !previouslyUsedPanel.Visible; previouslyUsedPanel.RectTransform.AbsoluteOffset = new Point(Math.Max(Math.Max(btn.Rect.X, entityCountPanel.Rect.Right), saveAssemblyFrame.Rect.Right), TopPanel.Rect.Height); return true; @@ -353,6 +375,7 @@ namespace Barotrauma { showEntitiesPanel.Visible = false; previouslyUsedPanel.Visible = false; + layerPanel.Visible = false; undoBufferPanel.Visible = !undoBufferPanel.Visible; undoBufferPanel.RectTransform.AbsoluteOffset = new Point(Math.Max(Math.Max(btn.Rect.X, entityCountPanel.Rect.Right), saveAssemblyFrame.Rect.Right), TopPanel.Rect.Height); return true; @@ -484,14 +507,81 @@ namespace Barotrauma //----------------------------------------------- + layerPanel = new GUIFrame(new RectTransform(new Vector2(0.175f, 0.4f), GUI.Canvas)) + { + Visible = false + }; + + GUILayoutGroup layerGroup = new GUILayoutGroup(new RectTransform(new Vector2(0.9f), layerPanel.RectTransform, anchor: Anchor.Center)); + + layerList = new GUIListBox(new RectTransform(new Vector2(1f, 0.8f), layerGroup.RectTransform)) + { + ScrollBarVisible = true, + AutoHideScrollBar = false, + OnSelected = (component, o) => + { + if (!(o is string layer)) { return false; } + + MapEntity.SelectedList.Clear(); + foreach (MapEntity entity in MapEntity.mapEntityList.Where(me => !me.Removed && me.Layer == layer)) + { + if (entity.IsSelected) { continue; } + + MapEntity.SelectedList.Add(entity); + } + return true; + } + }; + + GUILayoutGroup layerButtonGroup = new GUILayoutGroup(new RectTransform(new Vector2(1f, 0.2f), layerGroup.RectTransform)); + + GUILayoutGroup layerButtonTopGroup = new GUILayoutGroup(new RectTransform(new Vector2(1f, 0.5f), layerButtonGroup.RectTransform), isHorizontal: true); + + GUIButton layerAddButton = new GUIButton(new RectTransform(new Vector2(0.5f, 1f), layerButtonTopGroup.RectTransform), text: TextManager.Get("editor.layer.newlayer"), style: "GUIButtonFreeScale") + { + OnClicked = (button, o) => + { + CreateNewLayer(null, MapEntity.SelectedList.ToList()); + return true; + } + }; + + GUIButton layerDeleteButton = new GUIButton(new RectTransform(new Vector2(0.5f, 1f), layerButtonTopGroup.RectTransform), text: TextManager.Get("editor.layer.deletelayer"), style: "GUIButtonFreeScale") + { + OnClicked = (button, o) => + { + if (layerList.SelectedData is string layer) + { + RenameLayer(layer, null); + } + return true; + } + }; + + GUIButton layerRenameButton = new GUIButton(new RectTransform(new Vector2(1f, 0.5f), layerButtonGroup.RectTransform), text: TextManager.Get("editor.layer.renamelayer"), style: "GUIButtonFreeScale") + { + OnClicked = (button, o) => + { + if (layerList.SelectedData is string layer) + { + GUI.PromptTextInput(TextManager.Get("editor.layer.renamelayer"), layer, newName => + { + RenameLayer(layer, newName); + }); + } + + return true; + } + }; + + Vector2 subPanelSize = new Vector2(0.925f, 0.9f); + undoBufferPanel = new GUIFrame(new RectTransform(new Vector2(0.15f, 0.2f), GUI.Canvas) { MinSize = new Point(200, 200) }) { Visible = false }; - Vector2 undoSize = new Vector2(0.925f, 0.9f); - - undoBufferList = new GUIListBox(new RectTransform(undoSize, undoBufferPanel.RectTransform, Anchor.Center)) + undoBufferList = new GUIListBox(new RectTransform(subPanelSize, undoBufferPanel.RectTransform, Anchor.Center)) { ScrollBarVisible = true, OnSelected = (_, userData) => @@ -522,7 +612,7 @@ namespace Barotrauma } }; - undoBufferDisclaimer = new GUIFrame(new RectTransform(undoSize, undoBufferPanel.RectTransform, Anchor.Center), style: null) + undoBufferDisclaimer = new GUIFrame(new RectTransform(subPanelSize, undoBufferPanel.RectTransform, Anchor.Center), style: null) { Color = Color.Black, Visible = false @@ -1354,7 +1444,7 @@ namespace Barotrauma TimeSpan timeInEditor = DateTime.Now - editorSelectedTime; #if USE_STEAM - Steam.SteamManager.IncrementStat("hoursineditor", (float)timeInEditor.TotalHours); + SteamAchievementManager.IncrementStat("hoursineditor", (float)timeInEditor.TotalHours); #endif GUI.ForceMouseOn(null); @@ -1400,6 +1490,7 @@ namespace Barotrauma }); ClearFilter(); + ClearLayers(); } private void CreateDummyCharacter() @@ -1752,11 +1843,11 @@ namespace Barotrauma DebugConsole.ThrowError($"Saving the preview image of the submarine \"{Submarine.MainSub.Info.Name}\" failed.", e); savePreviewImage = false; } - Submarine.MainSub.SaveAs(savePath, savePreviewImage ? imgStream : null); + Submarine.MainSub.TrySaveAs(savePath, savePreviewImage ? imgStream : null); } else { - Submarine.MainSub.SaveAs(savePath); + Submarine.MainSub.TrySaveAs(savePath); } Barotrauma.IO.Validation.SkipValidationInDebugBuilds = false; @@ -2890,6 +2981,8 @@ namespace Barotrauma }; adjustLightsPrompt.Buttons[1].OnClicked += adjustLightsPrompt.Close; } + + ReconstructLayers(); } private void TryDeleteSub(SubmarineInfo sub) @@ -3075,6 +3168,8 @@ namespace Barotrauma if (container == null || container.DrawInventory) { target = item; } } + bool hasTargets = targets.Count > 0; + // Holding shift brings up special context menu options if (PlayerInput.IsShiftDown()) { @@ -3083,7 +3178,7 @@ namespace Barotrauma new ContextMenuOption("SubEditor.ToggleTransparency", isEnabled: true, onSelected: () => TransparentWiringMode = !TransparentWiringMode), new ContextMenuOption("SubEditor.ToggleGrid", isEnabled: true, onSelected: () => ShouldDrawGrid = !ShouldDrawGrid), new ContextMenuOption("SubEditor.PasteAssembly", isEnabled: true, () => PasteAssembly()), - new ContextMenuOption("Editor.SelectSame", isEnabled: targets.Count > 0, onSelected: delegate + new ContextMenuOption("Editor.SelectSame", isEnabled: hasTargets, onSelected: delegate { bool doorGapSelected = targets.Any(t => t is Gap gap && gap.ConnectedDoor != null); foreach (MapEntity match in MapEntity.mapEntityList.Where(e => e.prefab != null && targets.Any(t => t.prefab?.Identifier == e.prefab.Identifier) && !MapEntity.SelectedList.Contains(e))) @@ -3115,12 +3210,44 @@ namespace Barotrauma } else { + + List availableLayerOptions = new List + { + new ContextMenuOption("editor.layer.nolayer", true, onSelected: () => { MoveToLayer(null, targets); }) + }; + + availableLayerOptions.AddRange(Layers.Select(layer => new ContextMenuOption(layer.Key, true, onSelected: () => { MoveToLayer(layer.Key, targets); }))); + + ContextMenuOption[] layerOptions = + { + new ContextMenuOption("editor.layer.movetolayer", isEnabled: hasTargets, availableLayerOptions.ToArray()), + new ContextMenuOption("editor.layer.createlayer", isEnabled: hasTargets, onSelected: () => { CreateNewLayer(null, targets); }), + new ContextMenuOption("editor.layer.selectall", isEnabled: hasTargets, onSelected: () => + { + foreach (MapEntity match in MapEntity.mapEntityList.Where(e => targets.Any(t => !string.IsNullOrWhiteSpace(t.Layer) && t.Layer == e.Layer && !MapEntity.SelectedList.Contains(e)))) + { + if (MapEntity.SelectedList.Contains(match)) { continue; } + MapEntity.SelectedList.Add(match); + } + }), + new ContextMenuOption("editor.layer.openlayermenu", isEnabled: true, onSelected: () => + { + if (visibilityButton is null) { return; } + previouslyUsedPanel.Visible = false; + undoBufferPanel.Visible = false; + showEntitiesPanel.Visible = false; + layerPanel.Visible = !layerPanel.Visible; + layerPanel.RectTransform.AbsoluteOffset = new Point(Math.Max(Math.Max(visibilityButton.Rect.X, entityCountPanel.Rect.Right), saveAssemblyFrame.Rect.Right), TopPanel.Rect.Height); + }) + }; + GUIContextMenu.CreateContextMenu( - new ContextMenuOption("label.openlabel", isEnabled: target != null, onSelected: () => OpenItem(target)), - new ContextMenuOption("editor.cut", isEnabled: targets.Count > 0, onSelected: () => MapEntity.Cut(targets)), - new ContextMenuOption("editor.copytoclipboard", isEnabled: targets.Count > 0, onSelected: () => MapEntity.Copy(targets)), - new ContextMenuOption("editor.paste", isEnabled: MapEntity.CopiedList.Any(), onSelected: () => MapEntity.Paste(cam.ScreenToWorld(PlayerInput.MousePosition))), - new ContextMenuOption("delete", isEnabled: targets.Count > 0, onSelected: delegate + new ContextMenuOption("label.openlabel", isEnabled: target != null, onSelected: () => OpenItem(target)), + new ContextMenuOption("editor.layer", isEnabled: hasTargets, layerOptions), + new ContextMenuOption("editor.cut", isEnabled: hasTargets, onSelected: () => MapEntity.Cut(targets)), + new ContextMenuOption("editor.copytoclipboard", isEnabled: hasTargets, onSelected: () => MapEntity.Copy(targets)), + new ContextMenuOption("editor.paste", isEnabled: MapEntity.CopiedList.Any(), onSelected: () => MapEntity.Paste(cam.ScreenToWorld(PlayerInput.MousePosition))), + new ContextMenuOption("delete", isEnabled: hasTargets, onSelected: delegate { StoreCommand(new AddOrDeleteCommand(targets, true)); foreach (var me in targets) @@ -3131,6 +3258,76 @@ namespace Barotrauma } } + private void MoveToLayer(string layer, List content) + { + layer ??= string.Empty; + + foreach (MapEntity entity in content) + { + entity.Layer = layer; + } + } + + private void CreateNewLayer(string name, List content) + { + if (string.IsNullOrWhiteSpace(name)) + { + name = TextManager.Get("editor.layer.newlayer"); + } + + string incrementedName = name; + + for (int i = 1; Layers.ContainsKey(incrementedName); i++) + { + incrementedName = $"{name} ({i})"; + } + + name = incrementedName; + + if (content != null) + { + MoveToLayer(name, content); + } + + Layers.Add(name, true); + UpdateLayerPanel(); + } + + private void RenameLayer(string original, string newName) + { + Layers.Remove(original); + + foreach (MapEntity entity in MapEntity.mapEntityList.Where(entity => entity.Layer == original)) + { + entity.Layer = newName ?? string.Empty; + } + + if (!string.IsNullOrWhiteSpace(newName)) + { + Layers.TryAdd(newName, true); + } + UpdateLayerPanel(); + } + + private void ReconstructLayers() + { + ClearLayers(); + foreach (MapEntity entity in MapEntity.mapEntityList) + { + if (!string.IsNullOrWhiteSpace(entity.Layer)) + { + Layers.TryAdd(entity.Layer, true); + } + } + UpdateLayerPanel(); + } + + private void ClearLayers() + { + Layers.Clear(); + UpdateLayerPanel(); + } + private void PasteAssembly(string text = null, Vector2? pos = null) { pos ??= cam.ScreenToWorld(PlayerInput.MousePosition); @@ -4044,6 +4241,7 @@ namespace Barotrauma previouslyUsedPanel.AddToGUIUpdateList(); undoBufferPanel.AddToGUIUpdateList(); entityCountPanel.AddToGUIUpdateList(); + layerPanel.AddToGUIUpdateList(); TopPanel.AddToGUIUpdateList(); if (WiringMode) @@ -4147,9 +4345,55 @@ namespace Barotrauma GameMain.SubEditorScreen.UpdateUndoHistoryPanel(); } + private void UpdateLayerPanel() + { + if (layerPanel is null || layerList is null) { return; } + + layerList.Content.ClearChildren(); + + layerList.Deselect(); + + foreach (var (layer, isVisible) in Layers) + { + GUIFrame parent = new GUIFrame(new RectTransform(new Vector2(1f, 0.1f), layerList.Content.RectTransform), style: "ListBoxElement") + { + UserData = layer + }; + + GUILayoutGroup layerGroup = new GUILayoutGroup(new RectTransform(Vector2.One, parent.RectTransform), isHorizontal: true, childAnchor: Anchor.CenterLeft); + + GUITickBox layerVisibleButton = new GUITickBox(new RectTransform(Vector2.One, layerGroup.RectTransform, scaleBasis: ScaleBasis.BothHeight), string.Empty) + { + Selected = isVisible, + OnSelected = box => + { + if (!Layers.TryGetValue(layer, out bool _)) + { + UpdateLayerPanel(); + return false; + } + + Layers[layer] = box.Selected; + return true; + } + }; + + layerGroup.Recalculate(); + + new GUITextBlock(new RectTransform(new Vector2(1.0f - layerVisibleButton.RectTransform.RelativeSize.X, 1f), layerGroup.RectTransform), layer, textAlignment: Alignment.CenterLeft) + { + CanBeFocused = false + }; + + layerGroup.Recalculate(); + } + + layerList.RecalculateChildren(); + } + public void UpdateUndoHistoryPanel() { - if (undoBufferPanel == null) { return; } + if (undoBufferPanel is null) { return; } undoBufferDisclaimer.Visible = mode == Mode.Wiring; @@ -4203,7 +4447,7 @@ namespace Barotrauma public override void Update(double deltaTime) { SkipInventorySlotUpdate = false; - ImageManager.Update((float) deltaTime); + ImageManager.Update((float)deltaTime); if (GameMain.GraphicsWidth != screenResolution.X || GameMain.GraphicsHeight != screenResolution.Y) { @@ -4720,6 +4964,11 @@ namespace Barotrauma if (!saveAssemblyFrame.Rect.Contains(PlayerInput.MousePosition) && dummyCharacter?.SelectedConstruction == null && !WiringMode && GUI.MouseOn == null) { + if (layerList is { Visible: true } && GUI.KeyboardDispatcher.Subscriber == layerList) + { + GUI.KeyboardDispatcher.Subscriber = null; + } + MapEntity.UpdateSelecting(cam); } @@ -4998,7 +5247,7 @@ namespace Barotrauma var prevScissorRect = GameMain.Instance.GraphicsDevice.ScissorRectangle; - Rectangle subDimensions = Submarine.MainSub.CalculateDimensions(false); + Rectangle subDimensions = Submarine.MainSub.CalculateDimensions(onlyHulls: false); Vector2 viewPos = subDimensions.Center.ToVector2(); float scale = Math.Min(width / (float)subDimensions.Width, height / (float)subDimensions.Height); @@ -5087,5 +5336,19 @@ namespace Barotrauma public static bool IsSubEditor() => Screen.Selected is SubEditorScreen && !Submarine.Unloading; public static bool IsWiringMode() => Screen.Selected == GameMain.SubEditorScreen && GameMain.SubEditorScreen.WiringMode && !Submarine.Unloading; + public static bool IsLayerVisible(MapEntity entity) + { + if (!IsSubEditor()) { return true; } + + if (string.IsNullOrWhiteSpace(entity.Layer)) { return true; } + + if (!Layers.TryGetValue(entity.Layer, out bool isVisible)) + { + Layers.TryAdd(entity.Layer, true); + return true; + } + + return isVisible; + } } } diff --git a/Barotrauma/BarotraumaClient/ClientSource/Screens/TestScreen.cs b/Barotrauma/BarotraumaClient/ClientSource/Screens/TestScreen.cs index 38b34c0a0..55af5dcb5 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Screens/TestScreen.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Screens/TestScreen.cs @@ -23,6 +23,7 @@ namespace Barotrauma private Submarine? submarine; private Character? dummyCharacter; public static Effect BlueprintEffect; + private GUIFrame container; private TabMenu tabMenu; @@ -42,21 +43,25 @@ namespace Barotrauma return true; } }; + } public override void Select() { base.Select(); - + container = new GUIFrame(new RectTransform(Vector2.One, GUI.Canvas, Anchor.Center), style: "InnerGlow", color: Color.Black); + var tab = new GUIFrame(new RectTransform(Vector2.One, container.RectTransform), color: Color.Black * 0.9f); + MedicalClinicUI clinic = new MedicalClinicUI(new MedicalClinic(null!), tab); + clinic.RequestLatestPending(); if (dummyCharacter is { Removed: false }) { dummyCharacter?.Remove(); } - dummyCharacter = Character.Create(CharacterPrefab.HumanSpeciesName, Vector2.Zero, "", id: Entity.DummyID, hasAi: false); - dummyCharacter.Info.Job = new Job(JobPrefab.Prefabs.Where(jp => TalentTree.JobTalentTrees.ContainsKey(jp.Identifier)).GetRandom()); - dummyCharacter.Info.Name = "Galldren"; - dummyCharacter.Inventory.CreateSlots(); + // dummyCharacter = Character.Create(CharacterPrefab.HumanSpeciesName, Vector2.Zero, "", id: Entity.DummyID, hasAi: false); + // dummyCharacter.Info.Job = new Job(JobPrefab.Prefabs.Where(jp => TalentTree.JobTalentTrees.ContainsKey(jp.Identifier)).GetRandom()); + // dummyCharacter.Info.Name = "Galldren"; + // dummyCharacter.Inventory.CreateSlots(); Character.Controlled = dummyCharacter; GameMain.World.ProcessChanges(); @@ -67,9 +72,9 @@ namespace Barotrauma public override void AddToGUIUpdateList() { Frame.AddToGUIUpdateList(); - CharacterHUD.AddToGUIUpdateList(dummyCharacter); - dummyCharacter?.SelectedConstruction?.AddToGUIUpdateList(); - tabMenu.AddToGUIUpdateList(); + container.AddToGUIUpdateList(); + // CharacterHUD.AddToGUIUpdateList(dummyCharacter); + // dummyCharacter?.SelectedConstruction?.AddToGUIUpdateList(); } public override void Update(double deltaTime) @@ -92,12 +97,12 @@ namespace Barotrauma graphics.Clear(BackgroundColor); spriteBatch.Begin(SpriteSortMode.BackToFront, transformMatrix: Cam.Transform); - miniMapItem?.Draw(spriteBatch, false); - if (dummyCharacter is { } dummy) - { - dummyCharacter.DrawFront(spriteBatch, Cam); - dummyCharacter.Draw(spriteBatch, Cam); - } + // miniMapItem?.Draw(spriteBatch, false); + // if (dummyCharacter is { } dummy) + // { + // dummyCharacter.DrawFront(spriteBatch, Cam); + // dummyCharacter.Draw(spriteBatch, Cam); + // } spriteBatch.End(); spriteBatch.Begin(SpriteSortMode.Deferred, samplerState: GUI.SamplerState); diff --git a/Barotrauma/BarotraumaClient/ClientSource/Serialization/SerializableEntityEditor.cs b/Barotrauma/BarotraumaClient/ClientSource/Serialization/SerializableEntityEditor.cs index 66e9507f3..ab8ef0e8a 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Serialization/SerializableEntityEditor.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Serialization/SerializableEntityEditor.cs @@ -567,8 +567,6 @@ namespace Barotrauma { if (SetPropertyValue(property, entity, numInput.FloatValue)) { - // This causes stack overflow. What's the purpose of it? - //numInput.FloatValue = (float)property.GetValue(entity); TrySendNetworkUpdate(entity, property); } }; @@ -674,7 +672,16 @@ namespace Barotrauma Text = value, OverflowClip = true }; - + + HashSet editedEntities = new HashSet(); + propertyBox.OnTextChanged += (textBox, text) => + { + foreach (var entity in MapEntity.SelectedList) + { + editedEntities.Add(entity); + } + return true; + }; propertyBox.OnDeselected += (textBox, keys) => OnApply(textBox); propertyBox.OnEnterPressed += (box, text) => OnApply(box); refresh += () => @@ -684,12 +691,25 @@ namespace Barotrauma bool OnApply(GUITextBox textBox) { + List prevSelected = MapEntity.SelectedList.ToList(); + //reselect the entities that were selected during editing + //otherwise multi-editing won't work when we deselect the entities with unapplied changes in the textbox + foreach (var entity in editedEntities) + { + MapEntity.SelectedList.Add(entity); + } if (SetPropertyValue(property, entity, textBox.Text)) { TrySendNetworkUpdate(entity, property); textBox.Text = (string) property.GetValue(entity); textBox.Flash(GUI.Style.Green, flashDuration: 1f); } + //restore the entities that were selected before applying + MapEntity.SelectedList.Clear(); + foreach (var entity in prevSelected) + { + MapEntity.SelectedList.Add(entity); + } return true; } diff --git a/Barotrauma/BarotraumaClient/ClientSource/StatusEffects/StatusEffect.cs b/Barotrauma/BarotraumaClient/ClientSource/StatusEffects/StatusEffect.cs index 3d23f6590..2b06523f6 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/StatusEffects/StatusEffect.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/StatusEffects/StatusEffect.cs @@ -14,9 +14,10 @@ namespace Barotrauma { private List particleEmitters; - private static HashSet ActiveLoopingSounds = new HashSet(); + private readonly static HashSet ActiveLoopingSounds = new HashSet(); private static double LastMuffleCheckTime; private readonly List sounds = new List(); + public IEnumerable Sounds { get { return sounds; } } private SoundSelectionMode soundSelectionMode; private SoundChannel soundChannel; private Entity soundEmitter; @@ -53,7 +54,7 @@ namespace Barotrauma } } - partial void ApplyProjSpecific(float deltaTime, Entity entity, IEnumerable targets, Hull hull, Vector2 worldPosition, bool playSound) + partial void ApplyProjSpecific(float deltaTime, Entity entity, IReadOnlyList targets, Hull hull, Vector2 worldPosition, bool playSound) { if (playSound) { @@ -84,7 +85,14 @@ namespace Barotrauma } else { - targetLimb = targets.FirstOrDefault(t => t is Limb) as Limb; + for (int i = 0; i < targets.Count; i++) + { + if (targets[i] is Limb limb) + { + targetLimb = limb; + break; + } + } } if (targetLimb != null && !targetLimb.Removed) { @@ -147,10 +155,6 @@ namespace Barotrauma GameAnalyticsManager.AddErrorEventOnce("StatusEffect.ApplyProjSpecific:SoundNull2" + Environment.StackTrace.CleanupStackTrace(), GameAnalyticsManager.ErrorSeverity.Error, errorMsg); return; } - if (selectedSound.Sound.Disposed) - { - Submarine.ReloadRoundSound(selectedSound); - } soundChannel = SoundPlayer.PlaySound(selectedSound.Sound, worldPosition, selectedSound.Volume, selectedSound.Range, hullGuess: hull, ignoreMuffling: selectedSound.IgnoreMuffling); ignoreMuffling = selectedSound.IgnoreMuffling; if (soundChannel != null) { soundChannel.Looping = loopSound; } diff --git a/Barotrauma/BarotraumaClient/ClientSource/Utils/WikiImage.cs b/Barotrauma/BarotraumaClient/ClientSource/Utils/WikiImage.cs index 3dade74cc..3ac7dd677 100644 --- a/Barotrauma/BarotraumaClient/ClientSource/Utils/WikiImage.cs +++ b/Barotrauma/BarotraumaClient/ClientSource/Utils/WikiImage.cs @@ -122,7 +122,7 @@ namespace Barotrauma { int width = 4096; int height = 4096; - Rectangle subDimensions = sub.CalculateDimensions(false); + Rectangle subDimensions = sub.Borders; Vector2 viewPos = subDimensions.Center.ToVector2(); float scale = Math.Min(width / (float)subDimensions.Width, height / (float)subDimensions.Height); diff --git a/Barotrauma/BarotraumaClient/LinuxClient.csproj b/Barotrauma/BarotraumaClient/LinuxClient.csproj index 7bbfaee3a..444cd3bc8 100644 --- a/Barotrauma/BarotraumaClient/LinuxClient.csproj +++ b/Barotrauma/BarotraumaClient/LinuxClient.csproj @@ -6,7 +6,7 @@ Barotrauma FakeFish, Undertow Games Barotrauma - 0.15.23.0 + 0.16.0.0 Copyright © FakeFish 2018-2020 AnyCPU;x64 Barotrauma diff --git a/Barotrauma/BarotraumaClient/MacClient.csproj b/Barotrauma/BarotraumaClient/MacClient.csproj index 315be0cad..a5084ad6e 100644 --- a/Barotrauma/BarotraumaClient/MacClient.csproj +++ b/Barotrauma/BarotraumaClient/MacClient.csproj @@ -6,7 +6,7 @@ Barotrauma FakeFish, Undertow Games Barotrauma - 0.15.23.0 + 0.16.0.0 Copyright © FakeFish 2018-2020 AnyCPU;x64 Barotrauma diff --git a/Barotrauma/BarotraumaClient/WindowsClient.csproj b/Barotrauma/BarotraumaClient/WindowsClient.csproj index f6d190782..98f23b7fa 100644 --- a/Barotrauma/BarotraumaClient/WindowsClient.csproj +++ b/Barotrauma/BarotraumaClient/WindowsClient.csproj @@ -6,7 +6,7 @@ Barotrauma FakeFish, Undertow Games Barotrauma - 0.15.23.0 + 0.16.0.0 Copyright © FakeFish 2018-2020 AnyCPU;x64 Barotrauma diff --git a/Barotrauma/BarotraumaServer/LinuxServer.csproj b/Barotrauma/BarotraumaServer/LinuxServer.csproj index f8be62734..0bb97a69c 100644 --- a/Barotrauma/BarotraumaServer/LinuxServer.csproj +++ b/Barotrauma/BarotraumaServer/LinuxServer.csproj @@ -6,7 +6,7 @@ Barotrauma FakeFish, Undertow Games Barotrauma Dedicated Server - 0.15.23.0 + 0.16.0.0 Copyright © FakeFish 2018-2020 AnyCPU;x64 DedicatedServer diff --git a/Barotrauma/BarotraumaServer/MacServer.csproj b/Barotrauma/BarotraumaServer/MacServer.csproj index ee4cfe02e..6f73823c1 100644 --- a/Barotrauma/BarotraumaServer/MacServer.csproj +++ b/Barotrauma/BarotraumaServer/MacServer.csproj @@ -6,7 +6,7 @@ Barotrauma FakeFish, Undertow Games Barotrauma Dedicated Server - 0.15.23.0 + 0.16.0.0 Copyright © FakeFish 2018-2020 AnyCPU;x64 DedicatedServer diff --git a/Barotrauma/BarotraumaServer/ServerSource/Characters/Character.cs b/Barotrauma/BarotraumaServer/ServerSource/Characters/Character.cs index 8a6511484..35047f575 100644 --- a/Barotrauma/BarotraumaServer/ServerSource/Characters/Character.cs +++ b/Barotrauma/BarotraumaServer/ServerSource/Characters/Character.cs @@ -61,9 +61,9 @@ namespace Barotrauma GameMain.NetworkMember.CreateEntityEvent(this, new object[] { NetEntityEvent.Type.UpdateMoney }); } - partial void OnTalentGiven(string talentIdentifier) + partial void OnTalentGiven(TalentPrefab talentPrefab) { - GameServer.Log($"{GameServer.CharacterLogName(this)} has gained the talent '{talentIdentifier}'", ServerLog.MessageType.Talent); + GameServer.Log($"{GameServer.CharacterLogName(this)} has gained the talent '{talentPrefab.DisplayName}'", ServerLog.MessageType.Talent); } } } diff --git a/Barotrauma/BarotraumaServer/ServerSource/Characters/CharacterNetworking.cs b/Barotrauma/BarotraumaServer/ServerSource/Characters/CharacterNetworking.cs index a61d869c3..7eb20a6f5 100644 --- a/Barotrauma/BarotraumaServer/ServerSource/Characters/CharacterNetworking.cs +++ b/Barotrauma/BarotraumaServer/ServerSource/Characters/CharacterNetworking.cs @@ -288,15 +288,18 @@ namespace Barotrauma { UInt32 talentIdentifier = msg.ReadUInt32(); var prefab = TalentPrefab.TalentPrefabs.Find(p => p.UIntIdentifier == talentIdentifier); - if (prefab != null) { talentSelection.Add(prefab.Identifier); } + if (prefab == null) { continue; } + + if (TalentTree.IsViableTalentForCharacter(this, prefab.Identifier, talentSelection)) + { + GiveTalent(prefab.Identifier); + talentSelection.Add(prefab.Identifier); + } } - talentSelection = TalentTree.CheckTalentSelection(this, talentSelection); - - foreach (string talent in talentSelection) + if (talentSelection.Count != talentCount) { - GiveTalent(talent); + DebugConsole.AddWarning($"Failed to unlock talents: the amount of unlocked talents doesn't match (client: {talentCount}, server: {talentSelection.Count})"); } - break; } break; diff --git a/Barotrauma/BarotraumaServer/ServerSource/GameMain.cs b/Barotrauma/BarotraumaServer/ServerSource/GameMain.cs index 9c08e13ab..63652614b 100644 --- a/Barotrauma/BarotraumaServer/ServerSource/GameMain.cs +++ b/Barotrauma/BarotraumaServer/ServerSource/GameMain.cs @@ -17,6 +17,9 @@ namespace Barotrauma { public static readonly Version Version = Assembly.GetEntryAssembly().GetName().Version; + public static bool IsSingleplayer => NetworkMember == null; + public static bool IsMultiplayer => NetworkMember != null; + private static World world; public static World World diff --git a/Barotrauma/BarotraumaServer/ServerSource/GameSession/CrewManager.cs b/Barotrauma/BarotraumaServer/ServerSource/GameSession/CrewManager.cs index 7f2316759..3dcc595ba 100644 --- a/Barotrauma/BarotraumaServer/ServerSource/GameSession/CrewManager.cs +++ b/Barotrauma/BarotraumaServer/ServerSource/GameSession/CrewManager.cs @@ -53,7 +53,7 @@ namespace Barotrauma foreach (var activeOrder in ActiveOrders) { if (!(activeOrder?.First is Order order) || activeOrder.Second.HasValue) { continue; } - OrderChatMessage.WriteOrder(msg, order, null, order.TargetSpatialEntity, null, 0, order.WallSectionIndex); + OrderChatMessage.WriteOrder(msg, order, targetCharacter: null, order.TargetSpatialEntity, orderOption: null, orderPriority: 0, order.WallSectionIndex, isNewOrder: true); bool hasOrderGiver = order.OrderGiver != null; msg.Write(hasOrderGiver); if (hasOrderGiver) diff --git a/Barotrauma/BarotraumaServer/ServerSource/GameSession/GameModes/MultiPlayerCampaign.cs b/Barotrauma/BarotraumaServer/ServerSource/GameSession/GameModes/MultiPlayerCampaign.cs index 34883971f..65ff44e2c 100644 --- a/Barotrauma/BarotraumaServer/ServerSource/GameSession/GameModes/MultiPlayerCampaign.cs +++ b/Barotrauma/BarotraumaServer/ServerSource/GameSession/GameModes/MultiPlayerCampaign.cs @@ -348,7 +348,6 @@ namespace Barotrauma } } } - UpdateCampaignSubs(); SaveUtil.SaveGame(GameMain.GameSession.SavePath); PendingSubmarineSwitch = null; @@ -399,44 +398,12 @@ namespace Barotrauma Map.OnMissionsSelected += (loc, mission) => { LastUpdateID++; }; Reputation.OnAnyReputationValueChanged += () => { LastUpdateID++; }; - UpdateCampaignSubs(); - //increment save ID so clients know they're lacking the most up-to-date save file LastSaveID++; } - public static void UpdateCampaignSubs() - { - bool isSubmarineVisible(SubmarineInfo s) - => !GameMain.Server.ServerSettings.HiddenSubs.Any(h - => s.Name.Equals(h, StringComparison.OrdinalIgnoreCase)); - - List availableSubs = - SubmarineInfo.SavedSubmarines - .Where(s => - s.IsCampaignCompatible - && isSubmarineVisible(s)) - .ToList(); - - if (!availableSubs.Any()) - { - //None of the available subs were marked as campaign-compatible, just include all visible subs - availableSubs.AddRange( - SubmarineInfo.SavedSubmarines - .Where(isSubmarineVisible)); - } - - if (!availableSubs.Any()) - { - //No subs are visible at all! Just make the selected one available - availableSubs.Add(GameMain.NetLobbyScreen.SelectedSub); - } - - GameMain.NetLobbyScreen.CampaignSubmarines = availableSubs; - } - public bool CanPurchaseSub(SubmarineInfo info) - => info.Price <= Money && GameMain.NetLobbyScreen.CampaignSubmarines.Contains(info); + => info.Price <= Money && GetCampaignSubs().Contains(info); public void DiscardClientCharacterData(Client client) { diff --git a/Barotrauma/BarotraumaServer/ServerSource/GameSession/MedicalClinic.cs b/Barotrauma/BarotraumaServer/ServerSource/GameSession/MedicalClinic.cs new file mode 100644 index 000000000..3e2afe845 --- /dev/null +++ b/Barotrauma/BarotraumaServer/ServerSource/GameSession/MedicalClinic.cs @@ -0,0 +1,191 @@ +#nullable enable + +using System; +using System.Collections.Generic; +using System.Linq; +using Barotrauma.Networking; + +namespace Barotrauma +{ + internal partial class MedicalClinic + { + private enum RateLimitResult + { + OK, + LimitReached + } + + private struct RateLimitInfo + { + public int Requests; + public const int MaxRequests = 5; + public DateTimeOffset Expiry; + } + + private readonly Dictionary rateLimits = new Dictionary(); + + public void ServerRead(IReadMessage inc, Client sender) + { + NetworkHeader header = (NetworkHeader)inc.ReadByte(); + + switch (header) + { + case NetworkHeader.REQUEST_AFFLICTIONS: + ProcessRequestedAfflictions(inc, sender); + break; + case NetworkHeader.REQUEST_PENDING: + ProcessRequestedPending(sender); + break; + case NetworkHeader.ADD_PENDING: + ProcessNewAddition(inc, sender); + break; + case NetworkHeader.REMOVE_PENDING: + ProcessNewRemoval(inc, sender); + break; + case NetworkHeader.HEAL_PENDING: + ProcessHealing(sender); + break; + case NetworkHeader.CLEAR_PENDING: + ProcessClearing(sender); + break; + } + } + + private void ProcessNewAddition(IReadMessage inc, Client client) + { + if (CheckRateLimit(client) == RateLimitResult.LimitReached) { return; } + + NetCrewMember newCrewMember = INetSerializableStruct.Read(inc); + InsertPendingCrewMember(newCrewMember); + ServerSend(newCrewMember, NetworkHeader.ADD_PENDING, DeliveryMethod.Reliable, reponseClient: client); + } + + private void ProcessNewRemoval(IReadMessage inc, Client client) + { + if (CheckRateLimit(client) == RateLimitResult.LimitReached) { return; } + + NetRemovedAffliction removed = INetSerializableStruct.Read(inc); + RemovePendingAffliction(removed.CrewMember, removed.Affliction); + ServerSend(removed, NetworkHeader.REMOVE_PENDING, DeliveryMethod.Reliable, reponseClient: client); + } + + private void ProcessRequestedPending(Client client) + { + if (CheckRateLimit(client) == RateLimitResult.LimitReached) { return; } + + INetSerializableStruct writeCrewMember = new NetPendingCrew + { + CrewMembers = PendingHeals.ToArray() + }; + + ServerSend(writeCrewMember, NetworkHeader.REQUEST_PENDING, DeliveryMethod.Reliable, targetClient: client); + } + + private void ProcessHealing(Client client) + { + if (CheckRateLimit(client) == RateLimitResult.LimitReached) { return; } + + HealRequestResult result = HealAllPending(); + ServerSend(new NetHealRequest { Result = result }, NetworkHeader.HEAL_PENDING, DeliveryMethod.Reliable, reponseClient: client); + } + + private void ProcessClearing(Client client) + { + if (CheckRateLimit(client) == RateLimitResult.LimitReached) { return; } + + if (!PendingHeals.Any()) { return; } + + ClearPendingHeals(); + ServerSend(null, NetworkHeader.CLEAR_PENDING, DeliveryMethod.Reliable, reponseClient: client); + } + + private void ProcessRequestedAfflictions(IReadMessage inc, Client client) + { + if (CheckRateLimit(client) == RateLimitResult.LimitReached) { return; } + + NetCrewMember crewMember = INetSerializableStruct.Read(inc); + + CharacterInfo? foundInfo = crewMember.FindCharacterInfo(GetCrewCharacters()); + + NetAffliction[] pendingAfflictions = Array.Empty(); + int infoId = 0; + + if (foundInfo is { Character: { CharacterHealth: { } health } }) + { + pendingAfflictions = GetAllAfflictions(health); + infoId = foundInfo.GetIdentifierUsingOriginalName(); + } + + INetSerializableStruct writeCrewMember = new NetCrewMember + { + CharacterInfoID = infoId, + Afflictions = pendingAfflictions + }; + + ServerSend(writeCrewMember, NetworkHeader.REQUEST_AFFLICTIONS, DeliveryMethod.Unreliable, client); + } + + private RateLimitResult CheckRateLimit(Client client) + { + if (rateLimits.TryGetValue(client, out RateLimitInfo rateLimitInfo)) + { + if (rateLimitInfo.Expiry < DateTimeOffset.Now) + { + rateLimitInfo.Expiry = DateTimeOffset.Now.AddSeconds(5); + rateLimitInfo.Requests = 1; + } + else + { + if (rateLimitInfo.Requests > RateLimitInfo.MaxRequests) { return RateLimitResult.LimitReached; } + + rateLimitInfo.Requests++; + } + + rateLimits[client] = rateLimitInfo; + } + else + { + rateLimits.Add(client, new RateLimitInfo { Requests = 1, Expiry = DateTimeOffset.Now.AddSeconds(5) }); + } + + return RateLimitResult.OK; + } + + private IWriteMessage StartSending() + { + IWriteMessage msg = new WriteOnlyMessage(); + msg.Write((byte)ServerPacketHeader.MEDICAL); + return msg; + } + + private void ServerSend(INetSerializableStruct? netStruct, NetworkHeader header, DeliveryMethod deliveryMethod, Client? targetClient = null, Client? reponseClient = null) + { + if (targetClient is null) + { + foreach (Client c in GameMain.Server.ConnectedClients) + { + SendToClient(c); + } + + return; + } + + SendToClient(targetClient); + + void SendToClient(Client c) + { + MessageFlag flag = MessageFlag.Announce; + if (reponseClient != null && reponseClient == c) + { + flag = MessageFlag.Response; + } + + IWriteMessage msg = StartSending(); + msg.Write((byte)header); + msg.Write((byte)flag); + netStruct?.Write(msg); + GameMain.Server.ServerPeer.Send(msg, c.Connection, deliveryMethod); + } + } + } +} \ No newline at end of file diff --git a/Barotrauma/BarotraumaServer/ServerSource/Items/Components/Machines/Steering.cs b/Barotrauma/BarotraumaServer/ServerSource/Items/Components/Machines/Steering.cs index 472cf14b9..c26c7cde2 100644 --- a/Barotrauma/BarotraumaServer/ServerSource/Items/Components/Machines/Steering.cs +++ b/Barotrauma/BarotraumaServer/ServerSource/Items/Components/Machines/Steering.cs @@ -50,14 +50,14 @@ namespace Barotrauma.Items.Components newSteeringInput = new Vector2(msg.ReadSingle(), msg.ReadSingle()); } - if (!item.CanClientAccess(c)) return; + if (!item.CanClientAccess(c)) { return; } user = c.Character; AutoPilot = autoPilot; if (dockingButtonClicked) { - item.SendSignal("1", "toggle_docking"); + item.SendSignal(new Signal("1", sender: c.Character), "toggle_docking"); GameMain.Server.CreateEntityEvent(item, new object[] { NetEntityEvent.Type.ComponentState, item.GetComponentIndex(this), true }); } diff --git a/Barotrauma/BarotraumaServer/ServerSource/Items/Components/Repairable.cs b/Barotrauma/BarotraumaServer/ServerSource/Items/Components/Repairable.cs index 23c145bbf..5f9b0385b 100644 --- a/Barotrauma/BarotraumaServer/ServerSource/Items/Components/Repairable.cs +++ b/Barotrauma/BarotraumaServer/ServerSource/Items/Components/Repairable.cs @@ -46,6 +46,7 @@ namespace Barotrauma.Items.Components msg.Write(DeteriorateAlways); msg.Write(tinkeringDuration); msg.Write(tinkeringStrength); + msg.Write(tinkeringPowersDevices); msg.Write(CurrentFixer == null ? (ushort)0 : CurrentFixer.ID); msg.WriteRangedInteger((int)currentFixerAction, 0, 2); } diff --git a/Barotrauma/BarotraumaServer/ServerSource/Items/Components/Signal/ButtonTerminal.cs b/Barotrauma/BarotraumaServer/ServerSource/Items/Components/Signal/ButtonTerminal.cs index 056410165..4cdc0ec1b 100644 --- a/Barotrauma/BarotraumaServer/ServerSource/Items/Components/Signal/ButtonTerminal.cs +++ b/Barotrauma/BarotraumaServer/ServerSource/Items/Components/Signal/ButtonTerminal.cs @@ -8,7 +8,7 @@ namespace Barotrauma.Items.Components { int signalIndex = msg.ReadRangedInteger(0, Signals.Length - 1); if (!item.CanClientAccess(c)) { return; } - if (!SendSignal(signalIndex)) { return; } + if (!SendSignal(signalIndex, c.Character)) { return; } GameServer.Log($"{GameServer.CharacterLogName(c.Character)} sent a signal \"{Signals[signalIndex]}\" from {item.Name}", ServerLog.MessageType.ItemInteraction); item.CreateServerEvent(this, new object[] { signalIndex }); } diff --git a/Barotrauma/BarotraumaServer/ServerSource/Networking/GameServer.cs b/Barotrauma/BarotraumaServer/ServerSource/Networking/GameServer.cs index 199860e32..34ae3de09 100644 --- a/Barotrauma/BarotraumaServer/ServerSource/Networking/GameServer.cs +++ b/Barotrauma/BarotraumaServer/ServerSource/Networking/GameServer.cs @@ -218,33 +218,6 @@ namespace Barotrauma.Networking if (shuttle != null) { GameMain.NetLobbyScreen.SelectedShuttle = shuttle; } } - List campaignSubs = new List(); - if (serverSettings.CampaignSubmarines != null && serverSettings.CampaignSubmarines.Length > 0) - { - string[] submarines = serverSettings.CampaignSubmarines.Split(ServerSettings.SubmarineSeparatorChar); - for (int i = 0; i < submarines.Length; i++) - { - SubmarineInfo subInfo = SubmarineInfo.SavedSubmarines.FirstOrDefault(s => s.Name == submarines[i]); - if (subInfo != null && subInfo.IsCampaignCompatible) - { - campaignSubs.Add(subInfo); - } - } - } - else - { - // Add vanilla submarines by default - for (int i = 0; i < SubmarineInfo.SavedSubmarines.Count(); i++) - { - SubmarineInfo subInfo = SubmarineInfo.SavedSubmarines.ElementAt(i); - if (subInfo.IsVanillaSubmarine() && subInfo.IsCampaignCompatible) - { - campaignSubs.Add(SubmarineInfo.SavedSubmarines.ElementAt(i)); - } - } - } - GameMain.NetLobbyScreen.CampaignSubmarines = campaignSubs; - started = true; GameAnalyticsManager.AddDesignEvent("GameServer:Start"); @@ -835,6 +808,9 @@ namespace Barotrauma.Networking case ClientPacketHeader.CREW: ReadCrewMessage(inc, connectedClient); break; + case ClientPacketHeader.MEDICAL: + ReadMedicalMessage(inc, connectedClient); + break; case ClientPacketHeader.READY_CHECK: ReadyCheck.ServerRead(inc, connectedClient); break; @@ -879,16 +855,16 @@ namespace Barotrauma.Networking } else if (entity is Character character) { - errorStr = "Missing character " + character.Name + " (event id " + eventID.ToString() + ", entity id " + entityID.ToString() + ")."; - errorStrNoName = "Missing character " + character.SpeciesName + "(event id " + eventID.ToString() + ", entity id " + entityID.ToString() + ")."; + errorStr = $"Missing character {character.Name} (event id {eventID}, entity id {entityID})."; + errorStrNoName = $"Missing character {character.SpeciesName} (event id {eventID}, entity id {entityID})."; } else if (entity is Item item) { - errorStr = errorStrNoName = "Missing item " + item.Name + " (event id " + eventID.ToString() + ", entity id " + entityID.ToString() + ")."; + errorStr = errorStrNoName = $"Missing item {item.Name}, sub: {item.Submarine?.Info?.Name ?? "none"} (event id {eventID}, entity id {entityID})."; } else { - errorStr = errorStrNoName = "Missing entity " + entity.ToString() + " (event id " + eventID.ToString() + ", entity id " + entityID.ToString() + ")."; + errorStr = errorStrNoName = $"Missing entity {entity}, sub: {entity.Submarine?.Info?.Name ?? "none"} (event id {eventID}, entity id {entityID})."; } break; } @@ -1234,6 +1210,14 @@ namespace Barotrauma.Networking } } + private void ReadMedicalMessage(IReadMessage inc, Client sender) + { + if (GameMain.GameSession?.Campaign is MultiPlayerCampaign mpCampaign) + { + mpCampaign.MedicalClinic.ServerRead(inc, sender); + } + } + private void ReadReadyToSpawnMessage(IReadMessage inc, Client sender) { sender.SpectateOnly = inc.ReadBoolean() && (serverSettings.AllowSpectating || sender.Connection == OwnerConnection); @@ -1861,24 +1845,6 @@ namespace Barotrauma.Networking outmsg.Write(GameMain.NetLobbyScreen.SelectedShuttle.Name); outmsg.Write(GameMain.NetLobbyScreen.SelectedShuttle.MD5Hash.ToString()); - List campaignSubIndices = new List(); - if (GameMain.NetLobbyScreen.SelectedMode == GameModePreset.MultiPlayerCampaign) - { - IReadOnlyList subList = GameMain.NetLobbyScreen.GetSubList(); - for (int i = 0; i < subList.Count; i++) - { - if (GameMain.NetLobbyScreen.CampaignSubmarines.Contains(subList[i])) - { - campaignSubIndices.Add(i); - } - } - } - outmsg.Write((UInt16)campaignSubIndices.Count); - foreach (int campaignSubIndex in campaignSubIndices) - { - outmsg.Write((UInt16)campaignSubIndex); - } - outmsg.Write(serverSettings.Voting.AllowSubVoting); outmsg.Write(serverSettings.Voting.AllowModeVoting); @@ -2166,7 +2132,6 @@ namespace Barotrauma.Networking else { SendStartMessage(roundStartSeed, GameMain.NetLobbyScreen.LevelSeed, GameMain.GameSession, connectedClients, false); - GameMain.GameSession.StartRound(GameMain.NetLobbyScreen.LevelSeed, serverSettings.SelectedLevelDifficulty); Log("Game mode: " + selectedMode.Name, ServerLog.MessageType.ServerMessage); Log("Submarine: " + selectedSub.Name, ServerLog.MessageType.ServerMessage); @@ -2186,8 +2151,7 @@ namespace Barotrauma.Networking yield return CoroutineStatus.Failure; } - MissionMode missionMode = GameMain.GameSession.GameMode as MissionMode; - bool missionAllowRespawn = missionMode == null || !missionMode.Missions.Any(m => !m.AllowRespawn); + bool missionAllowRespawn = !(GameMain.GameSession.GameMode is MissionMode missionMode) || !missionMode.Missions.Any(m => !m.AllowRespawn); bool isOutpost = campaign != null && campaign.NextLevel?.Type == LevelData.LevelType.Outpost; if (serverSettings.AllowRespawn && missionAllowRespawn) @@ -2263,7 +2227,7 @@ namespace Barotrauma.Networking characterInfos.Add(client.CharacterInfo); if (client.CharacterInfo.Job == null || client.CharacterInfo.Job.Prefab != client.AssignedJob.First) { - client.CharacterInfo.Job = new Job(client.AssignedJob.First, client.AssignedJob.Second); + client.CharacterInfo.Job = new Job(client.AssignedJob.First, Rand.RandSync.Unsynced, client.AssignedJob.Second); } } @@ -2475,7 +2439,7 @@ namespace Barotrauma.Networking msg.Write(serverSettings.LockAllDefaultWires); msg.Write(serverSettings.AllowRagdollButton); msg.Write(serverSettings.AllowLinkingWifiToChat); - msg.Write(serverSettings.UseRespawnShuttle); + msg.Write(serverSettings.UseRespawnShuttle || (gameStarted && respawnManager.UsingShuttle)); msg.Write((byte)serverSettings.LosMode); msg.Write(includesFinalize); msg.WritePadBits(); @@ -3372,14 +3336,40 @@ namespace Barotrauma.Networking } } + public void IncrementStat(Character character, string achievementIdentifier, int amount) + { + achievementIdentifier = achievementIdentifier.ToLowerInvariant(); + foreach (Client client in connectedClients) + { + if (client.Character == character) + { + IncrementStat(client, achievementIdentifier, amount); + return; + } + } + } + public void GiveAchievement(Client client, string achievementIdentifier) { - if (client.GivenAchievements.Contains(achievementIdentifier)) return; + if (client.GivenAchievements.Contains(achievementIdentifier)) { return; } client.GivenAchievements.Add(achievementIdentifier); IWriteMessage msg = new WriteOnlyMessage(); msg.Write((byte)ServerPacketHeader.ACHIEVEMENT); msg.Write(achievementIdentifier); + msg.Write(0); + + serverPeer.Send(msg, client.Connection, DeliveryMethod.Reliable); + } + + public void IncrementStat(Client client, string achievementIdentifier, int amount) + { + if (client.GivenAchievements.Contains(achievementIdentifier)) { return; } + + IWriteMessage msg = new WriteOnlyMessage(); + msg.Write((byte)ServerPacketHeader.ACHIEVEMENT); + msg.Write(achievementIdentifier); + msg.Write(amount); serverPeer.Send(msg, client.Connection, DeliveryMethod.Reliable); } @@ -3733,7 +3723,7 @@ namespace Barotrauma.Networking if (assignedPlayerCount[jobPrefab] >= jobPrefab.MaxNumber) { continue; } var variant = Rand.Range(0, jobPrefab.Variants, Rand.RandSync.Server); - unassignedBots[0].Job = new Job(jobPrefab, variant); + unassignedBots[0].Job = new Job(jobPrefab, Rand.RandSync.Server, variant); assignedPlayerCount[jobPrefab]++; unassignedBots.Remove(unassignedBots[0]); canAssign = true; @@ -3756,7 +3746,7 @@ namespace Barotrauma.Networking { var job = remainingJobs.GetRandom(); var variant = Rand.Range(0, job.Variants); - c.Job = new Job(job, variant); + c.Job = new Job(job, Rand.RandSync.Unsynced, variant); assignedPlayerCount[c.Job.Prefab]++; } } @@ -3842,16 +3832,6 @@ namespace Barotrauma.Networking if (GameMain.NetLobbyScreen.SelectedSub != null) { serverSettings.SelectedSubmarine = GameMain.NetLobbyScreen.SelectedSub.Name; } if (GameMain.NetLobbyScreen.SelectedShuttle != null) { serverSettings.SelectedShuttle = GameMain.NetLobbyScreen.SelectedShuttle.Name; } - if (GameMain.NetLobbyScreen.CampaignSubmarines != null) - { - string submarinesString = string.Empty; - for (int i = 0; i < GameMain.NetLobbyScreen.CampaignSubmarines.Count; i++) - { - submarinesString += GameMain.NetLobbyScreen.CampaignSubmarines[i].Name + ServerSettings.SubmarineSeparatorChar; - } - submarinesString.Trim(ServerSettings.SubmarineSeparatorChar); - serverSettings.CampaignSubmarines = submarinesString; - } serverSettings.SaveSettings(); diff --git a/Barotrauma/BarotraumaServer/ServerSource/Networking/RespawnManager.cs b/Barotrauma/BarotraumaServer/ServerSource/Networking/RespawnManager.cs index f39ffd210..604c897f3 100644 --- a/Barotrauma/BarotraumaServer/ServerSource/Networking/RespawnManager.cs +++ b/Barotrauma/BarotraumaServer/ServerSource/Networking/RespawnManager.cs @@ -351,7 +351,7 @@ namespace Barotrauma.Networking { if (campaign?.GetClientCharacterData(c) == null || c.CharacterInfo.Job == null) { - c.CharacterInfo.Job = new Job(c.AssignedJob.First, c.AssignedJob.Second); + c.CharacterInfo.Job = new Job(c.AssignedJob.First, Rand.RandSync.Unsynced, c.AssignedJob.Second); } } diff --git a/Barotrauma/BarotraumaServer/ServerSource/Networking/ServerSettings.cs b/Barotrauma/BarotraumaServer/ServerSource/Networking/ServerSettings.cs index cb0a2582f..439891f62 100644 --- a/Barotrauma/BarotraumaServer/ServerSource/Networking/ServerSettings.cs +++ b/Barotrauma/BarotraumaServer/ServerSource/Networking/ServerSettings.cs @@ -11,6 +11,21 @@ namespace Barotrauma.Networking { partial class ServerSettings { + partial class NetPropertyData + { + private object lastSyncedValue; + public UInt16 LastUpdateID { get; private set; } + + public void SyncValue() + { + if (!PropEquals(lastSyncedValue, Value)) + { + LastUpdateID = (UInt16)(GameMain.NetLobbyScreen.LastUpdateID); + lastSyncedValue = Value; + } + } + } + public static readonly string ClientPermissionsFile = "Data" + Path.DirectorySeparatorChar + "clientpermissions.xml"; public static readonly char SubmarineSeparatorChar = '|'; @@ -35,20 +50,25 @@ namespace Barotrauma.Networking LoadClientPermissions(); } - private void WriteNetProperties(IWriteMessage outMsg) + private void WriteNetProperties(IWriteMessage outMsg, Client c) { - outMsg.Write((UInt16)netProperties.Keys.Count); foreach (UInt32 key in netProperties.Keys) { - outMsg.Write(key); - netProperties[key].Write(outMsg); + var property = netProperties[key]; + property.SyncValue(); + if (property.LastUpdateID > c.LastRecvLobbyUpdate) + { + outMsg.Write(key); + netProperties[key].Write(outMsg); + } } + outMsg.Write((UInt32)0); } public void ServerAdminWrite(IWriteMessage outMsg, Client c) { c.LastSentServerSettingsUpdate = LastPropertyUpdateId; - WriteNetProperties(outMsg); + WriteNetProperties(outMsg, c); WriteMonsterEnabled(outMsg); BanList.ServerAdminWrite(outMsg, c); Whitelist.ServerAdminWrite(outMsg, c); @@ -79,8 +99,11 @@ namespace Barotrauma.Networking { WriteExtraCargo(outMsg); } - - WriteHiddenSubs(outMsg); + + if (requiredFlags.HasFlag(NetFlags.HiddenSubs)) + { + WriteHiddenSubs(outMsg); + } if (c.HasPermission(Networking.ClientPermissions.ManageSettings) && !NetIdUtils.IdMoreRecentOrMatches(c.LastRecvServerSettingsUpdate, LastPropertyUpdateId)) @@ -164,6 +187,7 @@ namespace Barotrauma.Networking { ReadHiddenSubs(incMsg); changed |= true; + UpdateFlag(NetFlags.HiddenSubs); } if (flags.HasFlag(NetFlags.Misc)) diff --git a/Barotrauma/BarotraumaServer/ServerSource/Screens/NetLobbyScreen.cs b/Barotrauma/BarotraumaServer/ServerSource/Screens/NetLobbyScreen.cs index 69a37fa1f..cc3baa6d0 100644 --- a/Barotrauma/BarotraumaServer/ServerSource/Screens/NetLobbyScreen.cs +++ b/Barotrauma/BarotraumaServer/ServerSource/Screens/NetLobbyScreen.cs @@ -32,26 +32,6 @@ namespace Barotrauma set { selectedShuttle = value; lastUpdateID++; } } - [Obsolete("TODO: this list shouldn't exist, the client should just use the visible subs list instead")] - public List CampaignSubmarines - { - get - { - return campaignSubmarines; - } - set - { - campaignSubmarines = value; - lastUpdateID++; - if (GameMain.NetworkMember?.ServerSettings != null) - { - GameMain.NetworkMember.ServerSettings.ServerDetailsChanged = true; - } - } - } - - private List campaignSubmarines; - public GameModePreset[] GameModes { get; } private int selectedModeIndex; diff --git a/Barotrauma/BarotraumaServer/WindowsServer.csproj b/Barotrauma/BarotraumaServer/WindowsServer.csproj index ec80b7889..3dfa62e6d 100644 --- a/Barotrauma/BarotraumaServer/WindowsServer.csproj +++ b/Barotrauma/BarotraumaServer/WindowsServer.csproj @@ -6,7 +6,7 @@ Barotrauma FakeFish, Undertow Games Barotrauma Dedicated Server - 0.15.23.0 + 0.16.0.0 Copyright © FakeFish 2018-2020 AnyCPU;x64 DedicatedServer diff --git a/Barotrauma/BarotraumaShared/Data/ContentPackages/Vanilla 0.9.xml b/Barotrauma/BarotraumaShared/Data/ContentPackages/Vanilla 0.9.xml index 4a2e502cc..8f16f561e 100644 --- a/Barotrauma/BarotraumaShared/Data/ContentPackages/Vanilla 0.9.xml +++ b/Barotrauma/BarotraumaShared/Data/ContentPackages/Vanilla 0.9.xml @@ -144,6 +144,7 @@ + diff --git a/Barotrauma/BarotraumaShared/README.txt b/Barotrauma/BarotraumaShared/README.txt index a71341163..fe1f66f2a 100644 --- a/Barotrauma/BarotraumaShared/README.txt +++ b/Barotrauma/BarotraumaShared/README.txt @@ -2,8 +2,8 @@ http://www.barotraumagame.com -© 2018-2020 FakeFish Ltd. All rights reserved. -© 2019-2020 Daedalic Entertainment GmbH. The Daedalic logo is a trademark of Daedalic Entertainment GmbH, Germany. All rights reserved. +© 2018-2022 FakeFish Ltd. All rights reserved. +© 2019-2022 Daedalic Entertainment GmbH. The Daedalic logo is a trademark of Daedalic Entertainment GmbH, Germany. All rights reserved. Privacy policy: http://privacypolicy.daedalic.com See the wiki for more detailed info and instructions: diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/EnemyAIController.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/EnemyAIController.cs index 0500a03c8..64c069f5f 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/EnemyAIController.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/EnemyAIController.cs @@ -150,7 +150,7 @@ namespace Barotrauma private CoroutineHandle disableTailCoroutine; - private readonly IEnumerable myBodies; + private readonly List myBodies; public LatchOntoAI LatchOntoAI { get; private set; } public SwarmBehavior SwarmBehavior { get; private set; } @@ -306,7 +306,8 @@ namespace Barotrauma requiredHoleCount = (int)Math.Ceiling(ConvertUnits.ToDisplayUnits(colliderWidth) / Structure.WallSectionSize); - myBodies = Character.AnimController.Limbs.Select(l => l.body.FarseerBody); + myBodies = Character.AnimController.Limbs.Select(l => l.body.FarseerBody).ToList(); + myBodies.Add(Character.AnimController.Collider.FarseerBody); } private CharacterParams.AIParams _aiParams; @@ -1837,7 +1838,7 @@ namespace Barotrauma if (!attack.IsValidTarget(target)) { return false; } if (target is ISerializableEntity se && target is Character) { - if (attack.Conditionals.Any(c => !c.Matches(se))) { return false; } + if (attack.Conditionals.Any(c => !c.TargetSelf && !c.Matches(se))) { return false; } } if (attack.Conditionals.Any(c => c.TargetSelf && !c.Matches(Character))) { return false; } if (attack.Ranged) @@ -2182,10 +2183,22 @@ namespace Barotrauma float margin = MathHelper.PiOver4 * distanceFactor; if (angle < margin) { - var collisionCategories = Physics.CollisionCharacter | Physics.CollisionWall | Physics.CollisionLevel; - var pickedBody = Submarine.PickBody(weapon.SimPosition, target.SimPosition, myBodies, collisionCategories, allowInsideFixture: true); + var collisionCategories = Physics.CollisionCharacter | Physics.CollisionWall | Physics.CollisionLevel; + var pickedBody = Submarine.PickBody(weapon.SimPosition, Character.GetRelativeSimPosition(target), myBodies, collisionCategories, allowInsideFixture: true); if (pickedBody != null) { + if (target is MapEntity) + { + if (pickedBody.UserData is Submarine sub && sub == target.Submarine) + { + return true; + } + else if (target == pickedBody.UserData) + { + return true; + } + } + Character t = null; if (pickedBody.UserData is Character c) { diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/HumanAIController.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/HumanAIController.cs index f85b5f9dd..c9e8d616d 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/HumanAIController.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/HumanAIController.cs @@ -832,6 +832,8 @@ namespace Barotrauma if (container == null) { return 0; } if (!container.HasAccess(character)) { return 0; } if (!container.Inventory.CanBePut(containableItem)) { return 0; } + var rootContainer = container.Item.GetRootContainer(); + if (rootContainer?.GetComponent() != null || rootContainer?.GetComponent() != null) { return 0; } if (container.ShouldBeContained(containableItem, out bool isRestrictionsDefined)) { if (isRestrictionsDefined) @@ -1088,6 +1090,7 @@ namespace Barotrauma private void RespondToAttack(Character attacker, AttackResult attackResult) { + float minorDamageThreshold = 10; float healAmount = 0.0f; if (attacker != null) { @@ -1135,6 +1138,7 @@ namespace Barotrauma // Don't react to attackers that are outside of the sub (e.g. AoE attacks) return; } + bool isAttackerInfected = false; bool isAttackerFightingEnemy = false; if (IsFriendly(attacker)) { @@ -1155,10 +1159,14 @@ namespace Barotrauma } else { + isAttackerInfected = attacker.CharacterHealth.GetAfflictionStrength("alieninfection") > 0; // Inform other NPCs - if (cumulativeDamage > 1 || totalDamage >= 10) + if (isAttackerInfected || cumulativeDamage > 1 || totalDamage >= minorDamageThreshold) { - InformOtherNPCs(cumulativeDamage); + if (GameMain.IsMultiplayer || !attacker.IsPlayer || Character.TeamID != attacker.TeamID) + { + InformOtherNPCs(cumulativeDamage); + } } if (Character.IsBot) { @@ -1167,7 +1175,7 @@ namespace Barotrauma { if (Character.IsSecurity) { - if (attacker.TeamID != Character.TeamID && cumulativeDamage > 1 || cumulativeDamage > 10) + if (attacker.TeamID != Character.TeamID && cumulativeDamage > 1 || cumulativeDamage > minorDamageThreshold) { Character.Speak(TextManager.Get("dialogattackedbyfriendlysecurityarrest"), null, 0.50f, "attackedbyfriendlysecurityarrest", minDurationBetweenSimilar: 30.0f); } @@ -1181,26 +1189,8 @@ namespace Barotrauma Character.Speak(TextManager.Get("DialogAttackedByFriendly"), null, 0.50f, "attackedbyfriendly", minDurationBetweenSimilar: 30.0f); } } - if (cumulativeDamage > 1 && attacker.TeamID != Character.TeamID) - { - // If the attacker is using a low damage and high frequency weapon like a repair tool, we shouldn't use any delay. - AddCombatObjective(DetermineCombatMode(Character, cumulativeDamage), attacker, delay: realDamage > 1 ? GetReactionTime() : 0); - } - else - { - // Don't react to minor (accidental) dmg done by characters that are in the same team - if (cumulativeDamage < 10) - { - if (!Character.IsSecurity && cumulativeDamage > 1) - { - AddCombatObjective(AIObjectiveCombat.CombatMode.Retreat, attacker); - } - } - else - { - AddCombatObjective(DetermineCombatMode(Character, cumulativeDamage, dmgThreshold: 50), attacker, GetReactionTime() * 2); - } - } + // If the attacker is using a low damage and high frequency weapon like a repair tool, we shouldn't use any delay. + AddCombatObjective(DetermineCombatMode(Character, cumulativeDamage), attacker, delay: realDamage > 1 ? GetReactionTime() : 0); } if (!isAttackerFightingEnemy) { @@ -1242,13 +1232,13 @@ namespace Barotrauma continue; } } - var combatMode = DetermineCombatMode(otherCharacter, cumulativeDamage, isWitnessing, dmgThreshold: attacker.TeamID == Character.TeamID ? 50 : 10); + var combatMode = DetermineCombatMode(otherCharacter, cumulativeDamage, isWitnessing); float delay = isWitnessing ? GetReactionTime() : Rand.Range(2.0f, 5.0f, Rand.RandSync.Unsynced); otherHumanAI.AddCombatObjective(combatMode, attacker, delay); } } - AIObjectiveCombat.CombatMode DetermineCombatMode(Character c, float cumulativeDamage, bool isWitnessing = false, float dmgThreshold = 10, bool allowOffensive = true) + AIObjectiveCombat.CombatMode DetermineCombatMode(Character c, float cumulativeDamage, bool isWitnessing = false) { if (!IsFriendly(attacker)) { @@ -1268,6 +1258,17 @@ namespace Barotrauma } else { + float dmgThreshold = attacker.TeamID == Character.TeamID ? 50 : minorDamageThreshold; + if (isAttackerInfected) + { + cumulativeDamage = 100; + } + if (GameMain.IsSingleplayer && attacker.IsPlayer && Character.TeamID == attacker.TeamID) + { + // Bots in the player team never act aggressively in single player when attacked by the player + dmgThreshold = minorDamageThreshold; + return cumulativeDamage > dmgThreshold ? AIObjectiveCombat.CombatMode.Retreat : AIObjectiveCombat.CombatMode.None; + } if (Character.Submarine == null || !Character.Submarine.GetConnectedSubs().Contains(attacker.Submarine)) { // Outside or attacked from an unconnected submarine -> don't react. @@ -1279,17 +1280,17 @@ namespace Barotrauma isAttackerFightingEnemy = true; return AIObjectiveCombat.CombatMode.None; } - else if (isWitnessing && Character.CombatAction != null && !c.IsSecurity) + if (isWitnessing && Character.CombatAction != null && !c.IsSecurity) { return Character.CombatAction.WitnessReaction; } - else if (attacker.IsPlayer && FindInstigator() is Character instigator) + if (attacker.IsPlayer && FindInstigator() is Character instigator) { - // The guards don't react when the player there's an instigator around + // The guards don't react to player's aggressions when there's an instigator around isAttackerFightingEnemy = true; return c.IsSecurity ? AIObjectiveCombat.CombatMode.None : (instigator.CombatAction != null ? instigator.CombatAction.WitnessReaction : AIObjectiveCombat.CombatMode.Retreat); } - else if (attacker.TeamID == CharacterTeamType.FriendlyNPC && !(attacker.AIController.IsMentallyUnstable || attacker.AIController.IsMentallyUnstable)) + if (attacker.TeamID == CharacterTeamType.FriendlyNPC && !(attacker.AIController.IsMentallyUnstable || attacker.AIController.IsMentallyUnstable)) { if (c.IsSecurity) { @@ -1307,15 +1308,11 @@ namespace Barotrauma // Already targeting the attacker -> treat as a more serious threat. cumulativeDamage *= 2; } - if (attackResult.Afflictions != null && attackResult.Afflictions.Any(a => a is AfflictionHusk)) - { - cumulativeDamage = 100; - } if (cumulativeDamage > dmgThreshold) { if (c.IsSecurity) { - return c.IsSecurity && allowOffensive ? AIObjectiveCombat.CombatMode.Offensive : AIObjectiveCombat.CombatMode.Arrest; + return c.IsSecurity ? AIObjectiveCombat.CombatMode.Offensive : AIObjectiveCombat.CombatMode.Arrest; } else { @@ -1838,7 +1835,7 @@ namespace Barotrauma bool ignoreFire = objectiveManager.CurrentOrder is AIObjectiveExtinguishFires extinguishOrder && extinguishOrder.Priority > 0 || objectiveManager.HasActiveObjective(); bool ignoreWater = HasDivingSuit(character); bool ignoreOxygen = ignoreWater || HasDivingMask(character); - bool ignoreEnemies = ObjectiveManager.IsCurrentOrder() || ObjectiveManager.Objectives.Any(o => o is AIObjectiveFightIntruders); + bool ignoreEnemies = ObjectiveManager.IsCurrentOrder() || ObjectiveManager.GetActiveObjectives().Any(); float safety = CalculateHullSafety(hull, visibleHulls, character, ignoreWater, ignoreOxygen, ignoreFire, ignoreEnemies); if (isCurrentHull) { diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/IndoorsSteeringManager.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/IndoorsSteeringManager.cs index ca242f790..e5a71a3ed 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/IndoorsSteeringManager.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/IndoorsSteeringManager.cs @@ -51,19 +51,13 @@ namespace Barotrauma private set; } - /// - /// Returns true if the current or the next node is in ladders. - /// - public bool InLadders => - currentPath != null && currentPath.CurrentNode != null && - (currentPath.CurrentNode.Ladders != null && currentPath.CurrentNode.Ladders.Item.IsInteractable(character) || - (currentPath.NextNode != null && currentPath.NextNode.Ladders != null && currentPath.NextNode.Ladders.Item.IsInteractable(character))); - /// /// Returns true if any node in the path is in stairs /// public bool InStairs => currentPath != null && currentPath.Nodes.Any(n => n.Stairs != null); + public bool IsCurrentNodeLadder => currentPath?.CurrentNode?.Ladders != null && currentPath.CurrentNode.Ladders.Item.IsInteractable(character); + public bool IsNextNodeLadder => GetNextLadder() != null; public bool IsNextLadderSameAsCurrent @@ -99,14 +93,24 @@ namespace Barotrauma base.Update(speed); float step = 1.0f / 60.0f; checkDoorsTimer -= step; - buttonPressTimer -= step; + if (lastDoor.door == null || !lastDoor.shouldBeOpen || lastDoor.door.IsOpen) + { + buttonPressTimer = 0; + } + else + { + buttonPressTimer -= step; + } findPathTimer -= step; } public void SetPath(SteeringPath path) { currentPath = path; - if (path.Nodes.Any()) currentTarget = path.Nodes[path.Nodes.Count - 1].SimPosition; + if (path.Nodes.Any()) + { + currentTarget = path.Nodes[path.Nodes.Count - 1].SimPosition; + } findPathTimer = Math.Min(findPathTimer, 1.0f); IsPathDirty = false; } @@ -124,15 +128,9 @@ namespace Barotrauma public void SteeringSeek(Vector2 target, float weight, float minGapWidth = 0, Func startNodeFilter = null, Func endNodeFilter = null, Func nodeFilter = null, bool checkVisiblity = true) { - if (buttonPressTimer > 0 && lastDoor.door != null && lastDoor.state && !lastDoor.door.IsOpen) - { - // We have pressed the button and are waiting for the door to open -> Hold still until we can press the button again. - Reset(); - } - else - { - steering += CalculateSteeringSeek(target, weight, minGapWidth, startNodeFilter, endNodeFilter, nodeFilter, checkVisiblity); - } + // Have to use a variable here or resetting doesn't work. + Vector2 addition = CalculateSteeringSeek(target, weight, minGapWidth, startNodeFilter, endNodeFilter, nodeFilter, checkVisiblity); + steering += addition; } /// @@ -328,7 +326,13 @@ namespace Barotrauma { CheckDoorsInPath(); doorsChecked = true; - } + } + if (buttonPressTimer > 0 && lastDoor.door != null && lastDoor.shouldBeOpen && !lastDoor.door.IsOpen) + { + // We have pressed the button and are waiting for the door to open -> Hold still until we can press the button again. + Reset(); + return Vector2.Zero; + } Vector2 pos = host.WorldPosition; bool isDiving = character.AnimController.InWater && character.AnimController.HeadInWater; // Only humanoids can climb ladders @@ -378,7 +382,7 @@ namespace Barotrauma //at the same height as the waypoint if (Math.Abs(collider.SimPosition.Y - currentPath.CurrentNode.SimPosition.Y) < (collider.height / 2 + collider.radius) * 1.25f) { - float heightFromFloor = character.AnimController.GetColliderBottom().Y - character.AnimController.FloorY; + float heightFromFloor = character.AnimController.GetHeightFromFloor(); if (heightFromFloor <= 0.0f) { diff.Y = Math.Max(diff.Y, 100); @@ -516,7 +520,7 @@ namespace Barotrauma return ConvertUnits.ToDisplayUnits(Math.Max(colliderSize.X, colliderSize.Y)); } - private (Door door, bool state) lastDoor; + private (Door door, bool shouldBeOpen) lastDoor; private float GetDoorCheckTime() { if (steering.LengthSquared() > 0) @@ -539,7 +543,6 @@ namespace Barotrauma WayPoint nextWaypoint = null; Door door = null; bool shouldBeOpen = false; - if (currentPath.Nodes.Count == 1) { door = currentPath.Nodes.First().ConnectedDoor; @@ -645,7 +648,7 @@ namespace Barotrauma }); if (canAccess) { - bool pressButton = buttonPressTimer <= 0 || lastDoor.door != door || lastDoor.state != shouldBeOpen; + bool pressButton = buttonPressTimer <= 0 || lastDoor.door != door || lastDoor.shouldBeOpen != shouldBeOpen; if (door.HasIntegratedButtons) { if (pressButton && character.CanSeeTarget(door.Item)) @@ -653,7 +656,7 @@ namespace Barotrauma if (door.Item.TryInteract(character, forceSelectKey: true)) { lastDoor = (door, shouldBeOpen); - buttonPressTimer = buttonPressCooldown; + buttonPressTimer = shouldBeOpen ? buttonPressCooldown : 0; } else { @@ -671,7 +674,7 @@ namespace Barotrauma if (closestButton.Item.TryInteract(character, forceSelectKey: true)) { lastDoor = (door, shouldBeOpen); - buttonPressTimer = buttonPressCooldown; + buttonPressTimer = shouldBeOpen ? buttonPressCooldown : 0; } else { @@ -697,7 +700,6 @@ namespace Barotrauma // The button is on the wrong side of the door or a wall currentPath.Unreachable = true; } - lastDoor = (null, false); return; } } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjective.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjective.cs index 905cffa20..3d07e452f 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjective.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjective.cs @@ -16,7 +16,6 @@ namespace Barotrauma public virtual bool IgnoreUnsafeHulls => false; public virtual bool AbandonWhenCannotCompleteSubjectives => true; public virtual bool AllowSubObjectiveSorting => false; - public virtual bool ForceOrderPriority => true; public virtual bool PrioritizeIfSubObjectivesActive => false; /// diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveCleanupItem.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveCleanupItem.cs index 42950891c..007aee4a5 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveCleanupItem.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveCleanupItem.cs @@ -85,11 +85,12 @@ namespace Barotrauma bool equip = item.GetComponent() != null || item.AllowedSlots.Any(s => s != InvSlotType.Any) && item.AllowedSlots.None(s => - s == InvSlotType.Card || - s == InvSlotType.Head || - s == InvSlotType.Headset || - s == InvSlotType.InnerClothes || - s == InvSlotType.OuterClothes); + s == InvSlotType.Card || + s == InvSlotType.Head || + s == InvSlotType.Headset || + s == InvSlotType.InnerClothes || + s == InvSlotType.OuterClothes || + s == InvSlotType.HealthInterface); TryAddSubObjective(ref decontainObjective, () => new AIObjectiveDecontainItem(character, item, objectiveManager, targetContainer: suitableContainer.GetComponent()) { diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveCleanupItems.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveCleanupItems.cs index f3197b975..c47cc92f8 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveCleanupItems.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveCleanupItems.cs @@ -11,7 +11,7 @@ namespace Barotrauma public override string Identifier { get; set; } = "cleanup items"; public override bool KeepDivingGearOn => true; public override bool AllowAutomaticItemUnequipping => false; - public override bool ForceOrderPriority => false; + protected override bool ForceOrderPriority => false; public readonly List prioritizedItems = new List(); diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveCombat.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveCombat.cs index de085d3c4..ac40cf6ad 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveCombat.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveCombat.cs @@ -117,7 +117,7 @@ namespace Barotrauma private float AimSpeed => HumanAIController.AimSpeed; private float AimAccuracy => HumanAIController.AimAccuracy; - private bool EnemyIsClose() => Enemy != null && character.CurrentHull != null && character.CurrentHull == Enemy.CurrentHull || Vector2.DistanceSquared(character.Position, Enemy.Position) < 500; + private bool EnemyIsClose() => Enemy != null && Enemy.CurrentHull != null && HumanAIController.VisibleHulls.Contains(Enemy.CurrentHull) && Math.Abs(character.WorldPosition.X - Enemy.WorldPosition.X) < 300; public AIObjectiveCombat(Character character, Character enemy, CombatMode mode, AIObjectiveManager objectiveManager, float priorityModifier = 1, float coolDown = 10.0f) : base(character, objectiveManager, priorityModifier) @@ -366,7 +366,7 @@ namespace Barotrauma } } } - bool isAllowedToSeekWeapons = !EnemyIsClose() && character.TeamID != CharacterTeamType.FriendlyNPC && IsOffensiveOrArrest; + bool isAllowedToSeekWeapons = character.CurrentHull != null && !EnemyIsClose() && character.TeamID != CharacterTeamType.FriendlyNPC && IsOffensiveOrArrest; if (!isAllowedToSeekWeapons) { if (WeaponComponent == null) @@ -1190,19 +1190,5 @@ namespace Barotrauma } } } - - //private float CalculateEnemyStrength() - //{ - // float enemyStrength = 0; - // AttackContext currentContext = character.GetAttackContext(); - // foreach (Limb limb in Enemy.AnimController.Limbs) - // { - // if (limb.attack == null) continue; - // if (!limb.attack.IsValidContext(currentContext)) { continue; } - // if (!limb.attack.IsValidTarget(AttackTarget.Character)) { continue; } - // enemyStrength += limb.attack.GetTotalDamage(false); - // } - // return enemyStrength; - //} } } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveContainItem.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveContainItem.cs index f39b105f7..e2ba2c782 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveContainItem.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveContainItem.cs @@ -159,7 +159,8 @@ namespace Barotrauma { TargetName = container.Item.Name, AbortCondition = obj => - container?.Item == null || container.Item.Removed || container.Item.IsThisOrAnyContainerIgnoredByAI(character) || + container?.Item == null || container.Item.Removed || container.Item.IsThisOrAnyContainerIgnoredByAI(character) || + (container.Item.GetRootContainer()?.OwnInventory?.Locked ?? false) || ItemToContain == null || ItemToContain.Removed || !ItemToContain.IsOwnedBy(character) || container.Item.GetRootInventoryOwner() is Character c && c != character, SpeakIfFails = !objectiveManager.IsCurrentOrder() diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveDecontainItem.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveDecontainItem.cs index 1c8b16955..dbcfad9d2 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveDecontainItem.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveDecontainItem.cs @@ -40,6 +40,7 @@ namespace Barotrauma public Func RemoveExistingPredicate { get; set; } public int? RemoveExistingMax { get; set; } public string AbandonGetItemDialogueIdentifier { get; set; } + public Func AbandonGetItemDialogueCondition { get; set; } public AIObjectiveDecontainItem(Character character, Item targetItem, AIObjectiveManager objectiveManager, ItemContainer sourceContainer = null, ItemContainer targetContainer = null, float priorityModifier = 1) : base(character, objectiveManager, priorityModifier) @@ -106,6 +107,7 @@ namespace Barotrauma TryAddSubObjective(ref getItemObjective, constructor: () => new AIObjectiveGetItem(character, targetItem, objectiveManager, Equip) { + CannotFindDialogueCondition = AbandonGetItemDialogueCondition, CannotFindDialogueIdentifierOverride = AbandonGetItemDialogueIdentifier, SpeakIfFails = AbandonGetItemDialogueIdentifier != null, TakeWholeStack = this.TakeWholeStack diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveFightIntruders.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveFightIntruders.cs index 4de4c0a43..f4625b5bd 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveFightIntruders.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveFightIntruders.cs @@ -26,6 +26,7 @@ namespace Barotrauma if (totalEnemies == 0) { return 0; } if (character.IsSecurity) { return 100; } if (objectiveManager.IsOrder(this)) { return 100; } + // If there's any security officers onboard, leave fighting for them. return HumanAIController.IsTrueForAnyCrewMember(c => c.Character.IsSecurity && !c.Character.IsIncapacitated && c.Character.Submarine == character.Submarine) ? 0 : 100; } @@ -64,6 +65,7 @@ namespace Barotrauma if (target.CurrentHull == null) { return false; } if (HumanAIController.IsFriendly(character, target)) { return false; } if (!character.Submarine.IsConnectedTo(target.Submarine)) { return false; } + if (character.Submarine.TeamID != target.Submarine.TeamID) { return false; } if (target.HasAbilityFlag(AbilityFlags.IgnoredByEnemyAI)) { return false; } if (target.IsArrested) { return false; } return true; diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveFixLeak.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveFixLeak.cs index af2c65a9d..256913c4e 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveFixLeak.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveFixLeak.cs @@ -162,7 +162,10 @@ namespace Barotrauma CloseEnough = reach, DialogueIdentifier = Leak.FlowTargetHull != null ? "dialogcannotreachleak" : null, TargetName = Leak.FlowTargetHull?.DisplayName, - CheckVisibility = false + CheckVisibility = false, + requiredCondition = () => Leak.Submarine == character.Submarine, + // The Go To objective can be abandoned if the leak is fixed (in which case we don't want to use the dialogue) + SpeakCannotReachCondition = () => !CheckObjectiveSpecific() }, onAbandon: () => { diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveGetItem.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveGetItem.cs index 6613d85c0..e6f4fb9b5 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveGetItem.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveGetItem.cs @@ -59,6 +59,7 @@ namespace Barotrauma public bool CheckPathForEachItem { get; set; } public bool SpeakIfFails { get; set; } public string CannotFindDialogueIdentifierOverride { get; set; } + public Func CannotFindDialogueCondition { get; set; } private int _itemCount = 1; public int ItemCount @@ -560,22 +561,18 @@ namespace Barotrauma DebugConsole.NewMessage($"{character.Name}: Get item failed to reach {moveToTarget}", Color.Yellow); #endif } - if (SpeakIfFails) - { - SpeakCannotFind(); - } + SpeakCannotFind(); } private void SpeakCannotFind() { - if (character.IsOnPlayerTeam && objectiveManager.CurrentOrder == objectiveManager.CurrentObjective) - { - string msg = TextManager.Get(CannotFindDialogueIdentifierOverride, returnNull: true) ?? TextManager.Get("dialogcannotfinditem", returnNull: true); - if (msg != null) - { - character.Speak(msg, identifier: "dialogcannotfinditem", minDurationBetweenSimilar: 20.0f); - } - } + if (!SpeakIfFails) { return; } + if (!character.IsOnPlayerTeam) { return; } + if (objectiveManager.CurrentOrder != objectiveManager.CurrentObjective) { return; } + if (CannotFindDialogueCondition != null && !CannotFindDialogueCondition()) { return; } + string msg = TextManager.Get(CannotFindDialogueIdentifierOverride, returnNull: true) ?? TextManager.Get("dialogcannotfinditem", returnNull: true); + if (msg == null) { return; } + character.Speak(msg, identifier: "dialogcannotfinditem", minDurationBetweenSimilar: 20.0f); } } } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveGoTo.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveGoTo.cs index 72dcbaf98..6e1c554c4 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveGoTo.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveGoTo.cs @@ -96,6 +96,8 @@ namespace Barotrauma public float? OverridePriority = null; + public Func SpeakCannotReachCondition { get; set; } + protected override float GetPriority() { bool isOrder = objectiveManager.IsOrder(this); @@ -166,14 +168,14 @@ namespace Barotrauma DebugConsole.NewMessage($"{character.Name}: Cannot reach the target: {Target}", Color.Yellow); } #endif - if (character.IsOnPlayerTeam && objectiveManager.CurrentOrder == objectiveManager.CurrentObjective && DialogueIdentifier != null && SpeakIfFails) - { - string msg = TargetName == null ? TextManager.Get(DialogueIdentifier, true) : TextManager.GetWithVariable(DialogueIdentifier, "[name]", TargetName, formatCapitals: !(Target is Character)); - if (msg != null) - { - character.Speak(msg, identifier: DialogueIdentifier, minDurationBetweenSimilar: 20.0f); - } - } + if (!character.IsOnPlayerTeam) { return; } + if (objectiveManager.CurrentOrder != objectiveManager.CurrentObjective) { return; } + if (DialogueIdentifier == null) { return; } + if (!SpeakIfFails) { return; } + if (SpeakCannotReachCondition != null && !SpeakCannotReachCondition()) { return; } + string msg = TargetName == null ? TextManager.Get(DialogueIdentifier, true) : TextManager.GetWithVariable(DialogueIdentifier, "[name]", TargetName, formatCapitals: !(Target is Character)); + if (msg == null) { return; } + character.Speak(msg, identifier: DialogueIdentifier, minDurationBetweenSimilar: 20.0f); } public void ForceAct(float deltaTime) => Act(deltaTime); @@ -635,21 +637,27 @@ namespace Barotrauma { get { - if (SteeringManager == PathSteering && PathSteering.CurrentPath?.CurrentNode?.Ladders != null) + if (SteeringManager == PathSteering && PathSteering.CurrentPath != null && !PathSteering.CurrentPath.Finished && PathSteering.IsCurrentNodeLadder) { - //don't consider the character to be close enough to the target while climbing ladders, - //UNLESS the last node in the path has been reached - //otherwise characters can let go of the ladders too soon once they're close enough to the target - if (PathSteering.CurrentPath.NextNode != null) { return false; } + // Climbing a ladder + if (Target.WorldPosition.Y > character.WorldPosition.Y) + { + // The target is still above us + return false; + } + if (!character.AnimController.IsAboveFloor) + { + // Going through a hatch + return false; + } } if (!AlwaysUseEuclideanDistance && !character.AnimController.InWater) { - float yDiff = Math.Abs(Target.WorldPosition.Y - character.WorldPosition.Y); - if (yDiff > CloseEnough) { return false; } - float xDiff = Math.Abs(Target.WorldPosition.X - character.WorldPosition.X); - return xDiff <= CloseEnough; + float yDist = Math.Abs(Target.WorldPosition.Y - character.WorldPosition.Y); + if (yDist > CloseEnough) { return false; } + float xDist = Math.Abs(Target.WorldPosition.X - character.WorldPosition.X); + return xDist <= CloseEnough; } - Vector2 sourcePos = UseDistanceRelativeToAimSourcePos ? character.AnimController.AimSourceWorldPos : character.WorldPosition; return Vector2.DistanceSquared(Target.WorldPosition, sourcePos) < CloseEnough * CloseEnough; } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveLoadItem.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveLoadItem.cs index 8a6b8cea7..64ea294d3 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveLoadItem.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveLoadItem.cs @@ -4,6 +4,7 @@ using Microsoft.Xna.Framework; using System; using System.Collections.Generic; using System.Collections.Immutable; +using System.Linq; namespace Barotrauma { @@ -20,6 +21,8 @@ namespace Barotrauma private Item Container { get; } private ItemContainer ItemContainer { get; } private ImmutableArray TargetContainerTags { get; } + private ImmutableHashSet ValidContainableItemIdentifiers { get; } + private static Dictionary> AllValidContainableItemIdentifiers { get; } = new Dictionary>(); private int itemIndex = 0; private AIObjectiveDecontainItem decontainObjective; @@ -47,6 +50,109 @@ namespace Barotrauma abandonGetItemDialogueIdentifier = optionSpecificDialogueIdentifier; } } + ValidContainableItemIdentifiers = GetValidContainableItemIdentifiers(); + if (ValidContainableItemIdentifiers.None()) + { +#if DEBUG + DebugConsole.ShowError($"No valid containable item identifiers found for the Load Item objective targeting {Container}"); +#endif + Abandon = true; + return; + } + } + + private enum CheckStatus { Unfinished, Finished } + + private ImmutableHashSet GetValidContainableItemIdentifiers() + { + if (AllValidContainableItemIdentifiers.TryGetValue(Container.Prefab, out var existingIdentifiers)) + { + return existingIdentifiers; + } + // Status effects are often used to alter item condition so using the Containable Item Identifiers directly can lead to unwanted results + // For example, placing welding fuel tanks inside oxygen tank shelves + bool defaultContainableItemIdentifiers = true; + var potentialContainablePrefabs = MapEntityPrefab.List + .Where(mep => mep is ItemPrefab ip && ItemContainer.ContainableItemIdentifiers.Any(i => i == ip.Identifier || ip.Tags.Contains(i))) + .Cast(); + var validContainableItemIdentifiers = new HashSet(); + foreach (var component in Container.Components) + { + if (CheckComponent() == CheckStatus.Finished) + { + break; + } + CheckStatus CheckComponent() + { + if (component.statusEffectLists != null) + { + foreach (var (_, statusEffects) in component.statusEffectLists) + { + if (CheckStatusEffects(statusEffects) == CheckStatus.Finished) + { + return CheckStatus.Finished; + } + } + } + if (component is ItemContainer itemContainer && itemContainer.ContainableItems != null) + { + foreach (var item in itemContainer.ContainableItems) + { + if (CheckStatusEffects(item.statusEffects) == CheckStatus.Finished) + { + return CheckStatus.Finished; + } + } + } + return CheckStatus.Unfinished; + CheckStatus CheckStatusEffects(IEnumerable statusEffects) + { + if (statusEffects == null) { return CheckStatus.Unfinished; } + foreach (var statusEffect in statusEffects) + { + if ((statusEffect.TargetIdentifiers == null || statusEffect.TargetIdentifiers.None()) && !statusEffect.HasConditions) { continue; } + switch (TargetItemCondition) + { + case AIObjectiveLoadItems.ItemCondition.Empty: + if (!statusEffect.ReducesItemCondition()) { continue; } + break; + case AIObjectiveLoadItems.ItemCondition.Full: + if (!statusEffect.IncreasesItemCondition()) { continue; } + break; + default: + continue; + } + defaultContainableItemIdentifiers = false; + if (statusEffect.TargetIdentifiers != null) + { + foreach (string target in statusEffect.TargetIdentifiers) + { + foreach (var prefab in potentialContainablePrefabs) + { + if (CheckPrefab(prefab, () => prefab.Tags.Contains(target)) == CheckStatus.Finished) { return CheckStatus.Finished; } + } + } + } + foreach (var prefab in potentialContainablePrefabs) + { + if (CheckPrefab(prefab, () => statusEffect.MatchesTagConditionals(prefab)) == CheckStatus.Finished) { return CheckStatus.Finished; } + } + CheckStatus CheckPrefab(ItemPrefab prefab, Func isValid) + { + if (validContainableItemIdentifiers.Contains(prefab.Identifier)) { return CheckStatus.Unfinished; } + if (!isValid()) { return CheckStatus.Unfinished; } + validContainableItemIdentifiers.Add(prefab.Identifier); + if (potentialContainablePrefabs.Any(p => !validContainableItemIdentifiers.Contains(p.Identifier))) { return CheckStatus.Unfinished; } + return CheckStatus.Finished; + } + } + return CheckStatus.Unfinished; + } + } + } + var newIdentifiers = defaultContainableItemIdentifiers ? ItemContainer.ContainableItemIdentifiers.ToImmutableHashSet() : validContainableItemIdentifiers.ToImmutableHashSet(); + AllValidContainableItemIdentifiers.Add(Container.Prefab, newIdentifiers); + return newIdentifiers; } protected override float GetPriority() @@ -116,7 +222,7 @@ namespace Barotrauma base.Update(deltaTime); if (targetItem == null) { - if (character.FindItem(ref itemIndex, out Item item, identifiers: ItemContainer.ContainableItemIdentifiers, ignoreBroken: false, customPredicate: IsValidContainable, customPriorityFunction: GetConditionBasedPriority)) + if (character.FindItem(ref itemIndex, out Item item, identifiers: ValidContainableItemIdentifiers, ignoreBroken: false, customPredicate: IsValidContainable, customPriorityFunction: GetPriority)) { if (item == null) { @@ -125,17 +231,19 @@ namespace Barotrauma } targetItem = item; } - // Prefer items closer to full condition when target condition is Empty, and vice versa - float GetConditionBasedPriority(Item item) + float GetPriority(Item item) { try { - return TargetItemCondition switch + // Prefer items closer to full condition when target condition is Empty, and vice versa + float conditionBasedPriority = TargetItemCondition switch { AIObjectiveLoadItems.ItemCondition.Full => MathUtils.InverseLerp(100.0f, 0.0f, item.ConditionPercentage), AIObjectiveLoadItems.ItemCondition.Empty => MathUtils.InverseLerp(0.0f, 100.0f, item.ConditionPercentage), _ => throw new NotImplementedException() }; + // Prefer items that have the same identifier as one of the already contained items + return ItemContainer.ContainsItemsWithSameIdentifier(item) ? conditionBasedPriority : conditionBasedPriority / 2; } catch (NotImplementedException) { @@ -161,10 +269,11 @@ namespace Barotrauma TryAddSubObjective(ref decontainObjective, constructor: () => new AIObjectiveDecontainItem(character, targetItem, objectiveManager, targetContainer: ItemContainer, priorityModifier: PriorityModifier) { + AbandonGetItemDialogueCondition = () => IsValidContainable(targetItem), AbandonGetItemDialogueIdentifier = abandonGetItemDialogueIdentifier, Equip = true, RemoveExistingWhenNecessary = true, - RemoveExistingPredicate = (i) => AIObjectiveLoadItems.ItemMatchesTargetCondition(i, TargetItemCondition), + RemoveExistingPredicate = (i) => !ValidContainableItemIdentifiers.Contains(i.Prefab.Identifier) || AIObjectiveLoadItems.ItemMatchesTargetCondition(i, TargetItemCondition), RemoveExistingMax = 1 }, onCompleted: () => @@ -189,6 +298,7 @@ namespace Barotrauma { if (item == null) { return false; } if (item.Removed) { return false; } + if (!ValidContainableItemIdentifiers.Contains(item.Prefab.Identifier)) { return false; } if (ignoredItems.Contains(item)) { return false; } if ((item.SpawnedInCurrentOutpost && !item.AllowStealing) == character.IsOnPlayerTeam) { return false; } var rootInventoryOwner = item.GetRootInventoryOwner(); diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveLoop.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveLoop.cs index 21720599b..55b32ce12 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveLoop.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveLoop.cs @@ -46,6 +46,7 @@ namespace Barotrauma public override bool AllowSubObjectiveSorting => true; public virtual bool InverseTargetEvaluation => false; protected virtual bool ResetWhenClearingIgnoreList => true; + protected virtual bool ForceOrderPriority => true; public override bool IsLoop { get => true; set => throw new Exception("Trying to set the value for IsLoop from: " + System.Environment.StackTrace.CleanupStackTrace()); } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveManager.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveManager.cs index 1a24cc332..d521f19f7 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveManager.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveManager.cs @@ -643,7 +643,12 @@ namespace Barotrauma public bool IsOrder(AIObjective objective) { - return objective == ForcedOrder || CurrentOrders.Any(o => o.Objective == objective); + if (objective == ForcedOrder) { return true; } + foreach (var order in CurrentOrders) + { + if (order.Objective == objective) { return true; } + } + return false; } public bool HasOrders() diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectivePumpWater.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectivePumpWater.cs index 720cbd730..d0c4045e8 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectivePumpWater.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectivePumpWater.cs @@ -33,6 +33,7 @@ namespace Barotrauma if (pump.Item.Submarine == null) { return false; } if (pump.Item.CurrentHull == null) { return false; } if (pump.Item.Submarine.TeamID != character.TeamID) { return false; } + if (pump.IsAutoControlled) { return false; } if (pump.Item.ConditionPercentage <= 0) { return false; } if (pump.Item.CurrentHull.FireSources.Count > 0) { return false; } if (character.Submarine != null) diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveRescue.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveRescue.cs index 1c7786d6b..3b0b1499f 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveRescue.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Objectives/AIObjectiveRescue.cs @@ -489,7 +489,7 @@ namespace Barotrauma return Priority; } - public static IEnumerable GetSortedAfflictions(Character character) => CharacterHealth.SortAfflictionsBySeverity(character.CharacterHealth.GetAllAfflictions()); + public static IEnumerable GetSortedAfflictions(Character character, bool excludeBuffs = true) => CharacterHealth.SortAfflictionsBySeverity(character.CharacterHealth.GetAllAfflictions(), excludeBuffs); public static IEnumerable GetTreatableAfflictions(Character character) { diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Order.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Order.cs index a460c39c0..ad361a9e1 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Order.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/Order.cs @@ -374,7 +374,7 @@ namespace Barotrauma } if (OptionNames.Count != Options.Length) { - DebugConsole.ThrowError("Error in Order " + Name + " - the number of option names doesn't match the number of options."); + DebugConsole.AddWarning("Error in Order " + Name + " - the number of option names doesn't match the number of options."); OptionNames.Clear(); Options.ForEach(o => OptionNames.Add(o, o)); } @@ -499,16 +499,14 @@ namespace Barotrauma return false; } - public string GetChatMessage(string targetCharacterName, string targetRoomName, bool givingOrderToSelf, string orderOption = "", int? priority = null) + public string GetChatMessage(string targetCharacterName, string targetRoomName, bool givingOrderToSelf, string orderOption = "", bool isNewOrder = true) { - priority ??= CharacterInfo.HighestManualOrderPriority; - // If the order has a lesser priority, it means we are rearranging character orders - if (!TargetAllCharacters && priority != CharacterInfo.HighestManualOrderPriority && Identifier != "dismissed") + if (!TargetAllCharacters && !isNewOrder && Identifier != "dismissed") { + // Use special dialogue when we're rearranging character orders return TextManager.GetWithVariable("rearrangedorders", "[name]", targetCharacterName ?? string.Empty, returnNull: true) ?? string.Empty; } - string messageTag = $"{(givingOrderToSelf && !TargetAllCharacters ? "OrderDialogSelf" : "OrderDialog")}"; - messageTag += $".{Identifier}"; + string messageTag = $"{(givingOrderToSelf && !TargetAllCharacters ? "OrderDialogSelf" : "OrderDialog")}.{Identifier}"; if (!string.IsNullOrEmpty(orderOption)) { if (Identifier != "dismissed") diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/ShipCommand/ShipIssueWorker.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/ShipCommand/ShipIssueWorker.cs index cb99e69b9..8aca8933a 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/ShipCommand/ShipIssueWorker.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/ShipCommand/ShipIssueWorker.cs @@ -55,7 +55,7 @@ namespace Barotrauma CommandingCharacter.Speak(SuggestedOrderPrefab.GetChatMessage(OrderedCharacter.Name, "", false), minDurationBetweenSimilar: 5); } CurrentOrder = new Order(SuggestedOrderPrefab, TargetItem, TargetItemComponent, CommandingCharacter); - OrderedCharacter.SetOrder(CurrentOrder, Option, priority: 3, CommandingCharacter, CommandingCharacter != OrderedCharacter); + OrderedCharacter.SetOrder(CurrentOrder, Option, priority: CharacterInfo.HighestManualOrderPriority, CommandingCharacter, CommandingCharacter != OrderedCharacter); OrderedCharacter.Speak(TextManager.Get("DialogAffirmative"), delay: 1.0f, minDurationBetweenSimilar: 5); } TimeSinceLastAttempt = 0f; diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/ShipCommandManager.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/ShipCommandManager.cs index 9ffb51694..83b02089e 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/ShipCommandManager.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/AI/ShipCommandManager.cs @@ -75,7 +75,7 @@ namespace Barotrauma public void Update(float deltaTime) { - if (!Active) { return; } + if (!Active || character.IsArrested) { return; } decisionTimer -= deltaTime; if (decisionTimer <= 0.0f) { @@ -344,7 +344,6 @@ namespace Barotrauma ShipIssueWorkers.Clear(); - // could have support for multiple reactors, todo m61 if (CommandedSubmarine.GetItems(false).Find(i => i.HasTag("reactor") && !i.NonInteractable)?.GetComponent() is Reactor reactor) { ShipIssueWorkers.Add(new ShipIssueWorkerPowerUpReactor(this, Order.GetPrefab("operatereactor"), reactor.Item, reactor, "powerup")); diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/Animation/AnimController.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/Animation/AnimController.cs index f9a0b6c2e..65597452e 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/Animation/AnimController.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/Animation/AnimController.cs @@ -269,6 +269,11 @@ namespace Barotrauma } } + public float GetHeightFromFloor() => GetColliderBottom().Y - FloorY; + + // We need some margin, because if a hatch has closed, it's possible that the height from floor is slightly negative. + public bool IsAboveFloor => GetHeightFromFloor() > -0.1f; + public void UpdateUseItem(bool allowMovement, Vector2 handWorldPos) { useItemTimer = 0.5f; @@ -332,7 +337,7 @@ namespace Barotrauma aimingMelee = aimMelee; if (character.Stun > 0.0f || character.IsIncapacitated) { - aim = false; + aim = false; } //calculate the handle positions diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/Animation/FishAnimController.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/Animation/FishAnimController.cs index e829475c3..26732196b 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/Animation/FishAnimController.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/Animation/FishAnimController.cs @@ -382,51 +382,55 @@ namespace Barotrauma mouthLimb.body.ApplyLinearImpulse(Vector2.UnitY * force * 2, maxVelocity: NetConfig.MaxPhysicsBodyVelocity); mouthLimb.body.ApplyTorque(-force * 50); } - var jaw = GetLimb(LimbType.Jaw); - if (jaw != null) - { - jaw.body.ApplyTorque(-(float)Math.Sin(eatTimer * 150) * jaw.Mass * 25); - } - character.ApplyStatusEffects(ActionType.OnEating, deltaTime); - - float particleFrequency = MathHelper.Clamp(eatSpeed / 2, 0.02f, 0.5f); - if (Rand.Value() < particleFrequency / 6) + if (Character.CanEat) { - target.AnimController.MainLimb.AddDamage(target.SimPosition, dmg, 0, 0, false); - } - if (Rand.Value() < particleFrequency) - { - target.AnimController.MainLimb.AddDamage(target.SimPosition, 0, dmg, 0, false); - } - if (eatTimer % 1.0f < 0.5f && (eatTimer - deltaTime * eatSpeed) % 1.0f > 0.5f) - { - static bool CanBeSevered(LimbJoint j) => !j.IsSevered && j.CanBeSevered && j.LimbA != null && !j.LimbA.IsSevered && j.LimbB != null && !j.LimbB.IsSevered; - //keep severing joints until there is only one limb left - var nonSeveredJoints = target.AnimController.LimbJoints.Where(CanBeSevered); - if (nonSeveredJoints.None()) + var jaw = GetLimb(LimbType.Jaw); + if (jaw != null) { - //small monsters don't eat the contents of the character's inventory - if (Mass < target.AnimController.Mass) - { - target.Inventory?.AllItemsMod.ForEach(it => it?.Drop(dropper: null)); - } - - //only one limb left, the character is now full eaten - Entity.Spawner?.AddToRemoveQueue(target); - - if (Character.AIController is EnemyAIController enemyAi) - { - enemyAi.PetBehavior?.OnEat("dead", 1.0f); - } - - character.SelectedCharacter = null; + jaw.body.ApplyTorque(-(float)Math.Sin(eatTimer * 150) * jaw.Mass * 25); } - else //sever a random joint + + character.ApplyStatusEffects(ActionType.OnEating, deltaTime); + + float particleFrequency = MathHelper.Clamp(eatSpeed / 2, 0.02f, 0.5f); + if (Rand.Value() < particleFrequency / 6) { - target.AnimController.SeverLimbJoint(nonSeveredJoints.GetRandom()); + target.AnimController.MainLimb.AddDamage(target.SimPosition, dmg, 0, 0, false); } - } + if (Rand.Value() < particleFrequency) + { + target.AnimController.MainLimb.AddDamage(target.SimPosition, 0, dmg, 0, false); + } + if (eatTimer % 1.0f < 0.5f && (eatTimer - deltaTime * eatSpeed) % 1.0f > 0.5f) + { + static bool CanBeSevered(LimbJoint j) => !j.IsSevered && j.CanBeSevered && j.LimbA != null && !j.LimbA.IsSevered && j.LimbB != null && !j.LimbB.IsSevered; + //keep severing joints until there is only one limb left + var nonSeveredJoints = target.AnimController.LimbJoints.Where(CanBeSevered); + if (nonSeveredJoints.None()) + { + //small monsters don't eat the contents of the character's inventory + if (Mass < target.AnimController.Mass) + { + target.Inventory?.AllItemsMod.ForEach(it => it?.Drop(dropper: null)); + } + + //only one limb left, the character is now full eaten + Entity.Spawner?.AddToRemoveQueue(target); + + if (Character.AIController is EnemyAIController enemyAi) + { + enemyAi.PetBehavior?.OnEat("dead", 1.0f); + } + + character.SelectedCharacter = null; + } + else //sever a random joint + { + target.AnimController.SeverLimbJoint(nonSeveredJoints.GetRandom()); + } + } + } } else { diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/Animation/HumanoidAnimController.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/Animation/HumanoidAnimController.cs index 109cec337..68a2054e4 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/Animation/HumanoidAnimController.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/Animation/HumanoidAnimController.cs @@ -808,7 +808,8 @@ namespace Barotrauma if (head == null) { return; } if (torso == null) { return; } - if (currentHull != null) + //check both hulls: the hull whose coordinate space the ragdoll is in, and the hull whose bounds the character's origin actually is inside + if (currentHull != null && character.CurrentHull != null) { float surfacePos = currentHull.Surface; float surfaceThreshold = ConvertUnits.ToDisplayUnits(Collider.SimPosition.Y + 1.0f); @@ -816,7 +817,7 @@ namespace Barotrauma //and use its water surface instead of the current hull's if (currentHull.Rect.Y - currentHull.Surface < 5.0f) { - GetSurfacePos(CurrentHull, ref surfacePos); + GetSurfacePos(currentHull, ref surfacePos); void GetSurfacePos(Hull hull, ref float prevSurfacePos) { if (prevSurfacePos > surfaceThreshold) { return; } @@ -834,7 +835,7 @@ namespace Barotrauma foreach (var linkedTo in gap.linkedTo) { - if (linkedTo is Hull otherHull && otherHull != hull) + if (linkedTo is Hull otherHull && otherHull != hull && otherHull != currentHull) { prevSurfacePos = Math.Max(surfacePos, otherHull.Surface); GetSurfacePos(otherHull, ref prevSurfacePos); @@ -888,7 +889,6 @@ namespace Barotrauma { Vector2 mousePos = ConvertUnits.ToSimUnits(character.CursorPosition); Vector2 diff = (mousePos - torso.SimPosition) * Dir; - TargetMovement = new Vector2(0.0f, -0.1f); float newRotation = MathUtils.VectorToAngle(diff); Collider.SmoothRotate(newRotation, CurrentSwimParams.SteerTorque * character.SpeedMultiplier); } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/Attack.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/Attack.cs index e07f73f0c..ced071a7b 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/Attack.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/Attack.cs @@ -130,6 +130,9 @@ namespace Barotrauma set => _structureDamage = value; } + [Serialize(true, true), Editable] + public bool EmitStructureDamageParticles { get; private set; } + private float _itemDamage; [Serialize(0.0f, true), Editable(MinValueFloat = 0.0f, MaxValueFloat = 1000.0f)] public float ItemDamage @@ -311,7 +314,7 @@ namespace Barotrauma return totalDamage * DamageMultiplier; } - public Attack(float damage, float bleedingDamage, float burnDamage, float structureDamage, float itemDamage, float range = 0.0f, float penetration = 0f) + public Attack(float damage, float bleedingDamage, float burnDamage, float structureDamage, float itemDamage, float range = 0.0f) { if (damage > 0.0f) Afflictions.Add(AfflictionPrefab.InternalDamage.Instantiate(damage), null); if (bleedingDamage > 0.0f) Afflictions.Add(AfflictionPrefab.Bleeding.Instantiate(bleedingDamage), null); diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/Character.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/Character.cs index 1922a0453..ecccfd1db 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/Character.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/Character.cs @@ -682,8 +682,8 @@ namespace Barotrauma get { return CharacterHealth.BloodlossAmount; } set { - if (!MathUtils.IsValid(value)) return; - CharacterHealth.BloodlossAmount = MathHelper.Clamp(value, 0.0f, 100.0f); + if (!MathUtils.IsValid(value)) { return; } + CharacterHealth.BloodlossAmount = value; } } @@ -1830,7 +1830,7 @@ namespace Barotrauma if (!attack.IsValidTarget(attackTarget)) { return false; } if (attackTarget is ISerializableEntity se && attackTarget is Character) { - if (attack.Conditionals.Any(c => !c.Matches(se))) { return false; } + if (attack.Conditionals.Any(c => !c.TargetSelf && !c.Matches(se))) { return false; } } } if (attack.Conditionals.Any(c => c.TargetSelf && !c.Matches(this))) { return false; } @@ -2270,17 +2270,18 @@ namespace Barotrauma } } - if (SelectedConstruction?.GetComponent()?.TargetItem == item || - HeldItems.Any(it => it.GetComponent()?.TargetItem == item)) - { - return true; - } - if (item.InteractDistance == 0.0f && !item.Prefab.Triggers.Any()) { return false; } Pickable pickableComponent = item.GetComponent(); if (pickableComponent != null && pickableComponent.Picker != this && pickableComponent.Picker != null && !pickableComponent.Picker.IsDead) { return false; } + if (SelectedConstruction?.GetComponent()?.TargetItem == item) { return true; } + //optimization: don't use HeldItems because it allocates memory and this method is executed very frequently + var heldItem1 = Inventory?.GetItemInLimbSlot(InvSlotType.RightHand); + if (heldItem1?.GetComponent()?.TargetItem == item) { return true; } + var heldItem2 = Inventory?.GetItemInLimbSlot(InvSlotType.LeftHand); + if (heldItem2?.GetComponent()?.TargetItem == item) { return true; } + Vector2 characterDirection = Vector2.Transform(Vector2.UnitY, Matrix.CreateRotationZ(AnimController.Collider.Rotation)); Vector2 upperBodyPosition = Position + (characterDirection * 20.0f); @@ -3225,7 +3226,7 @@ namespace Barotrauma if (orderGiver != null) { - var abilityOrderedCharacter = new AbilityCharacter(this); + var abilityOrderedCharacter = new AbilityOrderedCharacter(this); orderGiver.CheckTalents(AbilityEffectType.OnGiveOrder, abilityOrderedCharacter); if (orderGiver.LastOrderedCharacter != this) @@ -3547,12 +3548,12 @@ namespace Barotrauma } #endif // Don't allow beheading for monster attacks, because it happens too frequently (crawlers/tigerthreshers etc attacking each other -> they will most often target to the head) - TrySeverLimbJoints(limbHit, attack.SeverLimbsProbability, attackResult.Damage, allowBeheading: attacker == null || attacker.IsHuman || attacker.IsPlayer); + TrySeverLimbJoints(limbHit, attack.SeverLimbsProbability, attackResult.Damage, allowBeheading: attacker == null || attacker.IsHuman || attacker.IsPlayer, attacker: attacker); return attackResult; } - public void TrySeverLimbJoints(Limb targetLimb, float severLimbsProbability, float damage, bool allowBeheading) + public void TrySeverLimbJoints(Limb targetLimb, float severLimbsProbability, float damage, bool allowBeheading, Character attacker = null) { if (GameMain.NetworkMember != null && GameMain.NetworkMember.IsClient) { return; } #if DEBUG @@ -3590,9 +3591,20 @@ namespace Barotrauma if (severed) { Limb otherLimb = joint.LimbA == targetLimb ? joint.LimbB : joint.LimbA; - otherLimb.body.ApplyLinearImpulse(targetLimb.LinearVelocity * targetLimb.Mass, maxVelocity: NetConfig.MaxPhysicsBodyVelocity * 0.5f); + otherLimb.body.ApplyLinearImpulse(targetLimb.LinearVelocity * targetLimb.Mass, maxVelocity: NetConfig.MaxPhysicsBodyVelocity * 0.5f); + if (attacker != null) + { + foreach (var statusEffect in statusEffects) + { + if (statusEffect.type == ActionType.OnSevered) { statusEffect.SetUser(attacker); } + } + foreach (var statusEffect in targetLimb.StatusEffects) + { + if (statusEffect.type == ActionType.OnSevered) { statusEffect.SetUser(attacker); } + } + } ApplyStatusEffects(ActionType.OnSevered, 1.0f); - targetLimb.ApplyStatusEffects(ActionType.OnSevered, 1.0f); + targetLimb.ApplyStatusEffects(ActionType.OnSevered, 1.0f); } } if (wasSevered && targetLimb.character.AIController is EnemyAIController enemyAI) @@ -3961,8 +3973,8 @@ namespace Barotrauma causeOfDeathAffliction?.Source ?? LastAttacker, LastDamageSource); OnDeath?.Invoke(this, CauseOfDeath); - var abilityKiller = new AbilityCharacter(CauseOfDeath.Killer); - CheckTalents(AbilityEffectType.OnDieToCharacter, abilityKiller); + var abilityCharacterKiller = new AbilityCharacterKiller(CauseOfDeath.Killer); + CheckTalents(AbilityEffectType.OnDieToCharacter, abilityCharacterKiller); if (GameMain.GameSession != null && Screen.Selected == GameMain.GameScreen) { @@ -4472,18 +4484,17 @@ namespace Barotrauma if (info == null) { return false; } info.UnlockedTalents.Add(talentPrefab.Identifier); if (characterTalents.Any(t => t.Prefab == talentPrefab)) { return false; } - #if SERVER GameMain.NetworkMember.CreateEntityEvent(this, new object[] { NetEntityEvent.Type.UpdateTalents }); #endif CharacterTalent characterTalent = new CharacterTalent(talentPrefab, this); - characterTalent.ActivateTalent(addingFirstTime); characterTalents.Add(characterTalent); + characterTalent.ActivateTalent(addingFirstTime); characterTalent.AddedThisRound = addingFirstTime; if (addingFirstTime) { - OnTalentGiven(talentPrefab.Identifier); + OnTalentGiven(talentPrefab); } return true; } @@ -4493,6 +4504,24 @@ namespace Barotrauma return info.UnlockedTalents.Contains(identifier); } + public bool HasUnlockedAllTalents() + { + if (TalentTree.JobTalentTrees.TryGetValue(Info.Job.Prefab.Identifier, out TalentTree talentTree)) + { + foreach (TalentSubTree talentSubTree in talentTree.TalentSubTrees) + { + foreach (TalentOption talentOption in talentSubTree.TalentOptionStages) + { + if (talentOption.Talents.None(t => HasTalent(t.Identifier))) + { + return false; + } + } + } + } + return true; + } + public static IEnumerable GetFriendlyCrew(Character character) { if (character is null) @@ -4552,7 +4581,7 @@ namespace Barotrauma } partial void OnMoneyChanged(int prevAmount, int newAmount); - partial void OnTalentGiven(string talentIdentifier); + partial void OnTalentGiven(TalentPrefab talentPrefab); /// /// This dictionary is used for stats that are required very frequently. Not very performant, but easier to develop with for now. @@ -4724,4 +4753,49 @@ namespace Barotrauma public Character Killer { get; set; } } + class AbilityAttackData : AbilityObject, IAbilityCharacter + { + public float DamageMultiplier { get; set; } = 1f; + public float AddedPenetration { get; set; } = 0f; + public List Afflictions { get; set; } + public bool ShouldImplode { get; set; } = false; + public Attack SourceAttack { get; } + public Character Character { get; set; } + public Character Attacker { get; set; } + + public AbilityAttackData(Attack sourceAttack, Character character) + { + SourceAttack = sourceAttack; + Character = character; + } + } + + class AbilityAttackResult : AbilityObject, IAbilityAttackResult + { + public AttackResult AttackResult { get; set; } + + public AbilityAttackResult(AttackResult attackResult) + { + AttackResult = attackResult; + } + } + + class AbilityCharacterKiller : AbilityObject, IAbilityCharacter + { + public AbilityCharacterKiller(Character character) + { + Character = character; + } + public Character Character { get; set; } + } + + class AbilityOrderedCharacter : AbilityObject, IAbilityCharacter + { + public AbilityOrderedCharacter(Character character) + { + Character = character; + } + public Character Character { get; set; } + } + } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/CharacterInfo.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/CharacterInfo.cs index e2772ba1c..5edfd3d8d 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/CharacterInfo.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/CharacterInfo.cs @@ -361,7 +361,7 @@ namespace Barotrauma public CharacterTeamType TeamID; - private readonly NPCPersonalityTrait personalityTrait; + private NPCPersonalityTrait personalityTrait; public const int MaxCurrentOrders = 3; public static int HighestManualOrderPriority => MaxCurrentOrders; @@ -568,7 +568,7 @@ namespace Barotrauma HasGenders = CharacterConfigElement.GetAttributeBool("genders", false); HasRaces = CharacterConfigElement.GetAttributeBool("races", false); SetGenderAndRace(randSync); - Job = (jobPrefab == null) ? Job.Random(Rand.RandSync.Unsynced) : new Job(jobPrefab, variant); + Job = (jobPrefab == null) ? Job.Random(Rand.RandSync.Unsynced) : new Job(jobPrefab, randSync, variant); HairColors = CharacterConfigElement.GetAttributeTupleArray("haircolors", new (Color, float)[] { (Color.WhiteSmoke, 100f) }).ToImmutableArray(); FacialHairColors = CharacterConfigElement.GetAttributeTupleArray("facialhaircolors", new (Color, float)[] { (Color.WhiteSmoke, 100f) }).ToImmutableArray(); SkinColors = CharacterConfigElement.GetAttributeTupleArray("skincolors", new (Color, float)[] { (new Color(255, 215, 200, 255), 100f) }).ToImmutableArray(); @@ -584,11 +584,10 @@ namespace Barotrauma } else { - name = ""; Name = GetRandomName(randSync); } OriginalName = !string.IsNullOrEmpty(originalName) ? originalName : Name; - personalityTrait = NPCPersonalityTrait.GetRandom(name + HeadSpriteId); + SetPersonalityTrait(); Salary = CalculateSalary(); if (ragdollFileName != null) { @@ -597,6 +596,11 @@ namespace Barotrauma LoadHeadAttachments(); } + private void SetPersonalityTrait() + { + personalityTrait = NPCPersonalityTrait.GetRandom(Name + HeadSpriteId); + } + public string GetRandomName(Rand.RandSync randSync) { string name = ""; @@ -1261,7 +1265,7 @@ namespace Barotrauma { int prevAmount = ExperiencePoints; - var experienceGainMultiplier = new AbilityValue(1f); + var experienceGainMultiplier = new AbilityExperienceGainMultiplier(1f); if (isMissionExperience) { Character?.CheckTalents(AbilityEffectType.OnGainMissionExperience, experienceGainMultiplier); @@ -1858,18 +1862,27 @@ namespace Barotrauma } } - class AbilitySkillGain : AbilityObject, IAbilityValue, IAbilityString, IAbilityCharacter + class AbilitySkillGain : AbilityObject, IAbilityValue, IAbilitySkillIdentifier, IAbilityCharacter { - public AbilitySkillGain(float value, string abilityString, Character character, bool gainedFromAbility) + public AbilitySkillGain(float skillAmount, string skillIdentifier, Character character, bool gainedFromAbility) { - Value = value; - String = abilityString; + Value = skillAmount; + SkillIdentifier = skillIdentifier; Character = character; GainedFromAbility = gainedFromAbility; } public Character Character { get; set; } public float Value { get; set; } - public string String { get; set; } + public string SkillIdentifier { get; set; } public bool GainedFromAbility { get; } } + + class AbilityExperienceGainMultiplier : AbilityObject, IAbilityValue + { + public AbilityExperienceGainMultiplier(float experienceGainMultiplier) + { + Value = experienceGainMultiplier; + } + public float Value { get; set; } + } } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/Health/Afflictions/Affliction.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/Health/Afflictions/Affliction.cs index 3407a90ed..150116a25 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/Health/Afflictions/Affliction.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/Health/Afflictions/Affliction.cs @@ -67,6 +67,9 @@ namespace Barotrauma public Affliction(AfflictionPrefab prefab, float strength) { +#if CLIENT + prefab?.ReloadSoundsIfNeeded(); +#endif Prefab = prefab; PendingAdditionStrength = Prefab.GrainBurst; _strength = strength; diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/Health/Afflictions/AfflictionBleeding.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/Health/Afflictions/AfflictionBleeding.cs index 2059661f5..f6da0bfd1 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/Health/Afflictions/AfflictionBleeding.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/Health/Afflictions/AfflictionBleeding.cs @@ -1,8 +1,4 @@ -using System; -using System.Collections.Generic; -using System.Text; - -namespace Barotrauma +namespace Barotrauma { class AfflictionBleeding : Affliction { @@ -15,6 +11,10 @@ namespace Barotrauma { base.Update(characterHealth, targetLimb, deltaTime); characterHealth.BloodlossAmount += Strength * (1.0f / 60.0f) * deltaTime; + if (Source != null) + { + characterHealth.BloodlossAffliction.Source = Source; + } } } } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/Health/Afflictions/AfflictionHusk.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/Health/Afflictions/AfflictionHusk.cs index 3a7b01df7..a3c9eccc1 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/Health/Afflictions/AfflictionHusk.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/Health/Afflictions/AfflictionHusk.cs @@ -52,10 +52,6 @@ namespace Barotrauma { if (state == value) { return; } state = value; - if (character != null && character == Character.Controlled) - { - UpdateMessages(); - } } } @@ -81,6 +77,9 @@ namespace Barotrauma base.Update(characterHealth, targetLimb, deltaTime); character = characterHealth.Character; if (character == null) { return; } + + UpdateMessages(); + if (!subscribedToDeathEvent) { character.OnDeath += CharacterDead; diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/Health/Afflictions/AfflictionPrefab.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/Health/Afflictions/AfflictionPrefab.cs index 983c91471..fda2666a1 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/Health/Afflictions/AfflictionPrefab.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/Health/Afflictions/AfflictionPrefab.cs @@ -363,6 +363,7 @@ namespace Barotrauma public readonly string Name, Description; public readonly string TranslationOverride; public readonly bool IsBuff; + public readonly float HealCostMultiplier; public readonly string CauseOfDeathDescription, SelfCauseOfDeathDescription; @@ -655,6 +656,7 @@ namespace Barotrauma Name = TextManager.Get("AfflictionName." + translationId, true) ?? element.GetAttributeString("name", ""); Description = TextManager.Get("AfflictionDescription." + translationId, true) ?? element.GetAttributeString("description", ""); IsBuff = element.GetAttributeBool("isbuff", false); + HealCostMultiplier = element.GetAttributeFloat(nameof(HealCostMultiplier).ToLowerInvariant(), 1f); if (element.Attribute("nameidentifier") != null) { @@ -677,7 +679,7 @@ namespace Barotrauma MaxStrength = element.GetAttributeFloat("maxstrength", 100.0f); GrainBurst = element.GetAttributeFloat(nameof(GrainBurst).ToLowerInvariant(), 0.0f); - ShowInHealthScannerThreshold = element.GetAttributeFloat("showinhealthscannerthreshold", Math.Max(ActivationThreshold, 0.05f)); + ShowInHealthScannerThreshold = element.GetAttributeFloat("showinhealthscannerthreshold", Math.Max(ActivationThreshold, AfflictionType == "talentbuff" ? float.MaxValue : 0.05f)); TreatmentThreshold = element.GetAttributeFloat("treatmentthreshold", Math.Max(ActivationThreshold, 5.0f)); DamageOverlayAlpha = element.GetAttributeFloat("damageoverlayalpha", 0.0f); @@ -751,6 +753,32 @@ namespace Barotrauma } } +#if CLIENT + public void ReloadSoundsIfNeeded() + { + foreach (var effect in effects) + { + foreach (var statusEffect in effect.StatusEffects) + { + foreach (var sound in statusEffect.Sounds) + { + if (sound.Sound == null) { Submarine.ReloadRoundSound(sound); } + } + } + } + foreach (var periodicEffect in periodicEffects) + { + foreach (var statusEffect in periodicEffect.StatusEffects) + { + foreach (var sound in statusEffect.Sounds) + { + if (sound.Sound == null) { Submarine.ReloadRoundSound(sound); } + } + } + } + } +#endif + public override string ToString() { return "AfflictionPrefab (" + Name + ")"; diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/Health/CharacterHealth.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/Health/CharacterHealth.cs index f99817499..b835eb5c2 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/Health/CharacterHealth.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/Health/CharacterHealth.cs @@ -111,6 +111,7 @@ namespace Barotrauma private Affliction oxygenLowAffliction; private Affliction pressureAffliction; private Affliction stunAffliction; + public Affliction BloodlossAffliction { get => bloodlossAffliction; } public bool IsUnconscious { @@ -181,7 +182,7 @@ namespace Barotrauma public float BloodlossAmount { get { return bloodlossAffliction.Strength; } - set { bloodlossAffliction.Strength = MathHelper.Clamp(value, 0.0f, 100.0f); } + set { bloodlossAffliction.Strength = MathHelper.Clamp(value, 0, bloodlossAffliction.Prefab.MaxStrength); } } public float Stun @@ -324,7 +325,11 @@ namespace Barotrauma if (kvp.Key == affliction) { int limbHealthIndex = limbHealths.IndexOf(kvp.Value); - return Character.AnimController.Limbs.FirstOrDefault(l => l.HealthIndex == limbHealthIndex); + foreach (Limb limb in Character.AnimController.Limbs) + { + if (limb.HealthIndex == limbHealthIndex) { return limb; } + } + return null; } } return null; @@ -658,7 +663,7 @@ namespace Barotrauma newStrength = Math.Min(existingAffliction.Prefab.MaxStrength, newStrength); if (existingAffliction == stunAffliction) { Character.SetStun(newStrength, true, true); } existingAffliction.Strength = newStrength; - existingAffliction.Source = newAffliction.Source; + if (newAffliction.Source != null) { existingAffliction.Source = newAffliction.Source; } CalculateVitality(); if (Vitality <= MinVitality) { @@ -744,7 +749,6 @@ namespace Barotrauma Character.StackSpeedMultiplier(1f + Character.GetStatValue(StatTypes.MovementSpeed)); - // maybe a bit of a hacky way to do this. should inquire if there is a better way. M61T if (Character.InWater) { Character.StackSpeedMultiplier(1f + Character.GetStatValue(StatTypes.SwimmingSpeed)); diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/Jobs/Job.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/Jobs/Job.cs index 7e11a575b..7fd0524ed 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/Jobs/Job.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/Jobs/Job.cs @@ -35,7 +35,7 @@ namespace Barotrauma public Skill PrimarySkill { get; } - public Job(JobPrefab jobPrefab, int variant = 0) + public Job(JobPrefab jobPrefab, Rand.RandSync randSync = Rand.RandSync.Unsynced, int variant = 0) { prefab = jobPrefab; Variant = variant; @@ -43,7 +43,7 @@ namespace Barotrauma skills = new Dictionary(); foreach (SkillPrefab skillPrefab in prefab.Skills) { - var skill = new Skill(skillPrefab); + var skill = new Skill(skillPrefab, randSync); skills.Add(skillPrefab.Identifier, skill); if (skillPrefab.IsPrimarySkill) { PrimarySkill = skill; } } @@ -79,7 +79,7 @@ namespace Barotrauma { var prefab = JobPrefab.Random(randSync); var variant = Rand.Range(0, prefab.Variants, randSync); - return new Job(prefab, variant); + return new Job(prefab, randSync, variant); } public float GetSkillLevel(string skillIdentifier) diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/Jobs/Skill.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/Jobs/Skill.cs index b0dc3c7be..c82419886 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/Jobs/Skill.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/Jobs/Skill.cs @@ -36,10 +36,10 @@ namespace Barotrauma public readonly float PriceMultiplier = 1.0f; - public Skill(SkillPrefab prefab) + public Skill(SkillPrefab prefab, Rand.RandSync randSync) { Identifier = prefab.Identifier; - level = Rand.Range(prefab.LevelRange.Start, prefab.LevelRange.End, Rand.RandSync.Server); + level = Rand.Range(prefab.LevelRange.Start, prefab.LevelRange.End, randSync); icon = GetIcon(); PriceMultiplier = prefab.PriceMultiplier; } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/Limb.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/Limb.cs index 6d7a8f929..d56202294 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/Limb.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/Limb.cs @@ -583,6 +583,8 @@ namespace Barotrauma private readonly List statusEffects = new List(); + public IEnumerable StatusEffects { get { return statusEffects; } } + public Limb(Ragdoll ragdoll, Character character, LimbParams limbParams) { this.ragdoll = ragdoll; @@ -756,8 +758,8 @@ namespace Barotrauma } if (attacker != null) { - var abilityAffliction = new AbilityAfflictionCharacter(newAffliction, character); - attacker.CheckTalents(AbilityEffectType.OnAddDamageAffliction, abilityAffliction); + var abilityAfflictionCharacter = new AbilityAfflictionCharacter(newAffliction, character); + attacker.CheckTalents(AbilityEffectType.OnAddDamageAffliction, abilityAfflictionCharacter); } if (applyAffliction) { @@ -1309,4 +1311,16 @@ namespace Barotrauma partial void LoadParamsProjSpecific(); } + + class AbilityAfflictionCharacter : AbilityObject, IAbilityAffliction, IAbilityCharacter + { + public AbilityAfflictionCharacter(Affliction affliction, Character character) + { + Affliction = affliction; + Character = character; + } + public Character Character { get; set; } + public Affliction Affliction { get; set; } + } + } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/Params/Ragdoll/RagdollParams.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/Params/Ragdoll/RagdollParams.cs index ff4f961f9..59481d908 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/Params/Ragdoll/RagdollParams.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/Params/Ragdoll/RagdollParams.cs @@ -612,7 +612,7 @@ namespace Barotrauma [Serialize(0f, true, description: "Width of the collider."), Editable(MinValueFloat = 0, MaxValueFloat = 1000)] public float Width { get; set; } - [Serialize(10f, true, description: "The more the density the heavier the limb is."), Editable(MinValueFloat = 0, MaxValueFloat = 100, DecimalCount = 2)] + [Serialize(10f, true, description: "The more the density the heavier the limb is."), Editable(MinValueFloat = 0.01f, MaxValueFloat = 100, DecimalCount = 2)] public float Density { get; set; } [Serialize(false, true), Editable] diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/AbilityConditionals/AbilityConditionData/AbilityConditionAttackData.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/AbilityConditionals/AbilityConditionData/AbilityConditionAttackData.cs index 93b267cd3..b45a81b25 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/AbilityConditionals/AbilityConditionData/AbilityConditionAttackData.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/AbilityConditionals/AbilityConditionData/AbilityConditionAttackData.cs @@ -1,5 +1,6 @@ using Barotrauma.Items.Components; using System; +using System.Collections.Generic; using System.Linq; using System.Xml.Linq; @@ -7,15 +8,19 @@ namespace Barotrauma.Abilities { class AbilityConditionAttackData : AbilityConditionData { + [Flags] private enum WeaponType { Any = 0, Melee = 1, Ranged = 2, - HandheldRanged = 3, - Turret = 4 + HandheldRanged = 4, + Turret = 8, + NoWeapon = 16 }; + private static readonly List WeaponTypeValues = Enum.GetValues(typeof(WeaponType)).Cast().ToList(); + private readonly string itemIdentifier; private readonly string[] tags; private readonly WeaponType weapontype; @@ -65,27 +70,39 @@ namespace Barotrauma.Abilities if (weapontype != WeaponType.Any) { - switch (weapontype) + foreach (WeaponType wt in WeaponTypeValues) { - // it is possible that an item that has both a melee and a projectile component will return true - // even when not used as a melee/ranged weapon respectively - // attackdata should contain data regarding whether the attack is melee or not - case WeaponType.Melee: - return item?.GetComponent() != null; - case WeaponType.Ranged: - return item?.GetComponent() != null; - case WeaponType.HandheldRanged: - { - var projectile = item?.GetComponent(); - return projectile?.Launcher?.GetComponent() != null; - } - case WeaponType.Turret: - { - var projectile = item?.GetComponent(); - return projectile?.Launcher?.GetComponent() != null; - } + if (wt == WeaponType.Any || !weapontype.HasFlag(wt)) { continue; } + switch (wt) + { + // it is possible that an item that has both a melee and a projectile component will return true + // even when not used as a melee/ranged weapon respectively + // attackdata should contain data regarding whether the attack is melee or not + case WeaponType.Melee: + if (item?.GetComponent() != null) { return true; } + break; + case WeaponType.Ranged: + if (item?.GetComponent() != null) { return true; } + break; + case WeaponType.HandheldRanged: + { + var projectile = item?.GetComponent(); + if (projectile?.Launcher?.GetComponent() != null) { return true; } + } + break; + case WeaponType.Turret: + { + var projectile = item?.GetComponent(); + if (projectile?.Launcher?.GetComponent() != null) { return true; } + } + break; + case WeaponType.NoWeapon: + if (item == null) { return true; } + break; + } } - } + return false; + } return true; } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/AbilityConditionals/AbilityConditionData/AbilityConditionItemInSubmarine.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/AbilityConditionals/AbilityConditionData/AbilityConditionItemInSubmarine.cs new file mode 100644 index 000000000..330bcfcd2 --- /dev/null +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/AbilityConditionals/AbilityConditionData/AbilityConditionItemInSubmarine.cs @@ -0,0 +1,38 @@ +using System.Xml.Linq; + +namespace Barotrauma.Abilities +{ + class AbilityConditionItemInSubmarine : AbilityConditionData + { + private readonly SubmarineType? submarineType; + + public AbilityConditionItemInSubmarine(CharacterTalent characterTalent, XElement conditionElement) : base(characterTalent, conditionElement) + { + if (conditionElement.Attribute("submarinetype") != null) + { + submarineType = conditionElement.GetAttributeEnum("submarinetype", SubmarineType.Player); + } + } + + protected override bool MatchesConditionSpecific(AbilityObject abilityObject) + { + if ((abilityObject as IAbilityItem)?.Item is Item item) + { + if (item.Submarine == null) { return false; } + if (submarineType.HasValue) + { + return item.Submarine.Info?.Type == submarineType.Value; + } + else + { + return true; + } + } + else + { + LogAbilityConditionError(abilityObject, typeof(IAbilityItem)); + return false; + } + } + } +} diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/AbilityConditionals/AbilityConditionData/AbilityConditionItemOutsideSubmarine.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/AbilityConditionals/AbilityConditionData/AbilityConditionItemOutsideSubmarine.cs deleted file mode 100644 index d23794f56..000000000 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/AbilityConditionals/AbilityConditionData/AbilityConditionItemOutsideSubmarine.cs +++ /dev/null @@ -1,23 +0,0 @@ -using System.Xml.Linq; - -namespace Barotrauma.Abilities -{ - class AbilityConditionItemOutsideSubmarine : AbilityConditionData - { - - public AbilityConditionItemOutsideSubmarine(CharacterTalent characterTalent, XElement conditionElement) : base(characterTalent, conditionElement) { } - - protected override bool MatchesConditionSpecific(AbilityObject abilityObject) - { - if ((abilityObject as IAbilityItem)?.Item is Item item) - { - return item.Submarine == null || item.Submarine.TeamID != character.Info.TeamID; - } - else - { - LogAbilityConditionError(abilityObject, typeof(IAbilityItem)); - return false; - } - } - } -} diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/AbilityConditionals/AbilityConditionData/AbilityConditionItemWreck.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/AbilityConditionals/AbilityConditionData/AbilityConditionItemWreck.cs deleted file mode 100644 index 81d1b1d06..000000000 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/AbilityConditionals/AbilityConditionData/AbilityConditionItemWreck.cs +++ /dev/null @@ -1,23 +0,0 @@ -using System.Xml.Linq; - -namespace Barotrauma.Abilities -{ - class AbilityConditionItemWreck : AbilityConditionData - { - - public AbilityConditionItemWreck(CharacterTalent characterTalent, XElement conditionElement) : base(characterTalent, conditionElement) { } - - protected override bool MatchesConditionSpecific(AbilityObject abilityObject) - { - if ((abilityObject as IAbilityItem)?.Item is Item item) - { - return item.Submarine?.Info?.IsWreck ?? false; - } - else - { - LogAbilityConditionError(abilityObject, typeof(IAbilityItem)); - return false; - } - } - } -} diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/AbilityConditionals/AbilityConditionData/AbilityConditionSkill.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/AbilityConditionals/AbilityConditionData/AbilityConditionSkill.cs index 5c368df8f..52d189213 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/AbilityConditionals/AbilityConditionData/AbilityConditionSkill.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/AbilityConditionals/AbilityConditionData/AbilityConditionSkill.cs @@ -18,13 +18,13 @@ namespace Barotrauma.Abilities protected override bool MatchesConditionSpecific(AbilityObject abilityObject) { - if ((abilityObject as IAbilityString)?.String is string skillIdentifier) + if ((abilityObject as IAbilitySkillIdentifier)?.SkillIdentifier is string skillIdentifier) { return MatchesConditionSpecific(skillIdentifier); } else { - LogAbilityConditionError(abilityObject, typeof(IAbilityString)); + LogAbilityConditionError(abilityObject, typeof(IAbilitySkillIdentifier)); return false; } } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/AbilityInterfaces.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/AbilityInterfaces.cs index 8c552ad82..ef57527d6 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/AbilityInterfaces.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/AbilityInterfaces.cs @@ -30,9 +30,9 @@ public Character Character { get; set; } } - interface IAbilityString + interface IAbilitySkillIdentifier { - public string String { get; set; } + public string SkillIdentifier { get; set; } } interface IAbilityAffliction diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/AbilityObjects.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/AbilityObjects.cs index db98b843d..6d7038f4c 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/AbilityObjects.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/AbilityObjects.cs @@ -16,173 +16,4 @@ namespace Barotrauma.Abilities public Character Character { get; set; } } - class AbilityItem : AbilityObject, IAbilityItem - { - public AbilityItem(Item item) - { - Item = item; - } - public Item Item { get; set; } - } - - class AbilityValue : AbilityObject, IAbilityValue - { - public AbilityValue(float value) - { - Value = value; - } - public float Value { get; set; } - } - - class AbilityAffliction : AbilityObject, IAbilityAffliction - { - public AbilityAffliction(Affliction affliction) - { - Affliction = affliction; - } - public Affliction Affliction { get; set; } - } - - class AbilityAfflictionCharacter : AbilityObject, IAbilityAffliction, IAbilityCharacter - { - public AbilityAfflictionCharacter(Affliction affliction, Character character) - { - Affliction = affliction; - Character = character; - } - public Character Character { get; set; } - public Affliction Affliction { get; set; } - } - - class AbilityValueItem : AbilityObject, IAbilityValue, IAbilityItemPrefab - { - public AbilityValueItem(float value, ItemPrefab itemPrefab) - { - Value = value; - ItemPrefab = itemPrefab; - } - public float Value { get; set; } - public ItemPrefab ItemPrefab { get; set; } - } - - class AbilityItemPrefabItem : AbilityObject, IAbilityItem, IAbilityItemPrefab - { - public AbilityItemPrefabItem(Item item, ItemPrefab itemPrefab) - { - Item = item; - ItemPrefab = itemPrefab; - } - public Item Item { get; set; } - public ItemPrefab ItemPrefab { get; set; } - } - - class AbilityValueString : AbilityObject, IAbilityValue, IAbilityString - { - public AbilityValueString(float value, string abilityString) - { - Value = value; - String = abilityString; - } - public float Value { get; set; } - public string String { get; set; } - } - - class AbilityStringCharacter : AbilityObject, IAbilityCharacter, IAbilityString - { - public AbilityStringCharacter(string abilityString, Character character) - { - String = abilityString; - Character = character; - } - public Character Character { get; set; } - public string String { get; set; } - } - - class AbilityValueAffliction : AbilityObject, IAbilityValue, IAbilityAffliction - { - public AbilityValueAffliction(float value, Affliction affliction) - { - Value = value; - Affliction = affliction; - } - public float Value { get; set; } - public Affliction Affliction { get; set; } - } - - class AbilityValueMission : AbilityObject, IAbilityValue, IAbilityMission - { - public AbilityValueMission(float value, Mission mission) - { - Value = value; - Mission = mission; - } - public float Value { get; set; } - public Mission Mission { get; set; } - } - - class AbilityLocation : AbilityObject, IAbilityLocation - { - public AbilityLocation(Location location) - { - Location = location; - } - - public Location Location { get; set; } - } - - // this is an exception class that should only be passed in this form, so classes that use it should cast into it directly - class AbilityAttackData : AbilityObject, IAbilityCharacter - { - public float DamageMultiplier { get; set; } = 1f; - public float AddedPenetration { get; set; } = 0f; - public List Afflictions { get; set; } - public bool ShouldImplode { get; set; } = false; - public Attack SourceAttack { get; } - public Character Character { get; set; } - public Character Attacker { get; set; } - - public AbilityAttackData(Attack sourceAttack, Character character) - { - SourceAttack = sourceAttack; - Character = character; - } - } - - class AbilityApplyTreatment : AbilityObject, IAbilityCharacter, IAbilityItem - { - public Character Character { get; set; } - - public Character User { get; set; } - - public Item Item { get; set; } - - public AbilityApplyTreatment(Character user, Character target, Item item) - { - Character = target; - User = user; - Item = item; - } - } - - class AbilityAttackResult : AbilityObject, IAbilityAttackResult - { - public AttackResult AttackResult { get; set; } - - public AbilityAttackResult(AttackResult attackResult) - { - AttackResult = attackResult; - } - } - - class AbilityCharacterSubmarine : AbilityObject, IAbilityCharacter, IAbilitySubmarine - { - public AbilityCharacterSubmarine(Character character, Submarine submarine) - { - Character = character; - Submarine = submarine; - } - public Character Character { get; set; } - public Submarine Submarine { get; set; } - } - } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/CharacterAbility.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/CharacterAbility.cs index 0abc6dbc1..27d856553 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/CharacterAbility.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/CharacterAbility.cs @@ -87,7 +87,7 @@ namespace Barotrauma.Abilities DebugConsole.AddWarning($"Ability {this} used improperly! This ability does not take a parameter for ApplyEffect in talent {CharacterTalent.DebugIdentifier}"); } - protected void LogabilityObjectMismatch() + protected void LogAbilityObjectMismatch() { DebugConsole.ThrowError($"Incompatible ability! Ability {this} is incompatitible with this type of ability effect type in talent {CharacterTalent.DebugIdentifier}"); } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/CharacterAbilityGainSimultaneousSkill.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/CharacterAbilityGainSimultaneousSkill.cs index f2c500a54..9f37a0e03 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/CharacterAbilityGainSimultaneousSkill.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/CharacterAbilityGainSimultaneousSkill.cs @@ -23,7 +23,7 @@ namespace Barotrauma.Abilities } else { - LogabilityObjectMismatch(); + LogAbilityObjectMismatch(); } } } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/CharacterAbilityModifyAffliction.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/CharacterAbilityModifyAffliction.cs index 5d073a068..e3896090c 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/CharacterAbilityModifyAffliction.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/CharacterAbilityModifyAffliction.cs @@ -29,7 +29,7 @@ namespace Barotrauma.Abilities } else { - LogabilityObjectMismatch(); + LogAbilityObjectMismatch(); } } } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/CharacterAbilityModifyAttackData.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/CharacterAbilityModifyAttackData.cs index 8b4245dc9..9b4700fe5 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/CharacterAbilityModifyAttackData.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/CharacterAbilityModifyAttackData.cs @@ -41,7 +41,7 @@ namespace Barotrauma.Abilities } else { - LogabilityObjectMismatch(); + LogAbilityObjectMismatch(); } } } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/CharacterAbilitySpawnItemsToContainer.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/CharacterAbilitySpawnItemsToContainer.cs index b13e97638..919848c3a 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/CharacterAbilitySpawnItemsToContainer.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/CharacterAbilitySpawnItemsToContainer.cs @@ -37,7 +37,7 @@ namespace Barotrauma.Abilities } else { - LogabilityObjectMismatch(); + LogAbilityObjectMismatch(); } } } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/CustomAbilities/CharacterAbilityAlienHoarder.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/CustomAbilities/CharacterAbilityAlienHoarder.cs index 7c7141a25..a6907ca41 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/CustomAbilities/CharacterAbilityAlienHoarder.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/CustomAbilities/CharacterAbilityAlienHoarder.cs @@ -34,7 +34,7 @@ namespace Barotrauma.Abilities } else { - LogabilityObjectMismatch(); + LogAbilityObjectMismatch(); } } } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/CustomAbilities/CharacterAbilityApprenticeship.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/CustomAbilities/CharacterAbilityApprenticeship.cs index 9bb79d132..2cc7a26f1 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/CustomAbilities/CharacterAbilityApprenticeship.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/CustomAbilities/CharacterAbilityApprenticeship.cs @@ -1,6 +1,4 @@ -using Microsoft.Xna.Framework; -using System; -using System.Xml.Linq; +using System.Xml.Linq; namespace Barotrauma.Abilities { @@ -18,7 +16,7 @@ namespace Barotrauma.Abilities if (abilityObject is AbilitySkillGain abilitySkillGain && abilitySkillGain.Character != Character) { if (ignoreAbilitySkillGain && abilitySkillGain.GainedFromAbility) { return; } - Character.Info?.IncreaseSkillLevel(abilitySkillGain.String, 1.0f, gainedFromAbility: true); + Character.Info?.IncreaseSkillLevel(abilitySkillGain.SkillIdentifier, 1.0f, gainedFromAbility: true); } } } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/CustomAbilities/CharacterAbilityMultitasker.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/CustomAbilities/CharacterAbilityMultitasker.cs index 5cb3857fc..c66630989 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/CustomAbilities/CharacterAbilityMultitasker.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/CustomAbilities/CharacterAbilityMultitasker.cs @@ -13,7 +13,7 @@ namespace Barotrauma.Abilities protected override void ApplyEffect(AbilityObject abilityObject) { - if ((abilityObject as IAbilityString)?.String is string skillIdentifier) + if ((abilityObject as IAbilitySkillIdentifier)?.SkillIdentifier is string skillIdentifier) { if (skillIdentifier != lastSkillIdentifier) { diff --git a/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/CustomAbilities/CharacterAbilityTandemFire.cs b/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/CustomAbilities/CharacterAbilityTandemFire.cs index 8d6c64ac5..2fbb95ec9 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/CustomAbilities/CharacterAbilityTandemFire.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Characters/Talents/Abilities/CustomAbilities/CharacterAbilityTandemFire.cs @@ -9,7 +9,7 @@ namespace Barotrauma.Abilities class CharacterAbilityTandemFire : CharacterAbilityApplyStatusEffectsToNearestAlly { // this should just be its own class, misleading to inherit here - private string tag; + private readonly string tag; public CharacterAbilityTandemFire(CharacterAbilityGroup characterAbilityGroup, XElement abilityElement) : base(characterAbilityGroup, abilityElement) { tag = abilityElement.GetAttributeString("tag", ""); @@ -20,7 +20,7 @@ namespace Barotrauma.Abilities if (Character.SelectedConstruction == null || !Character.SelectedConstruction.HasTag(tag)) { return; } Character closestCharacter = null; - float closestDistance = float.MaxValue; + float closestDistance = squaredMaxDistance; foreach (Character crewCharacter in Character.GetFriendlyCrew(Character)) { diff --git a/Barotrauma/BarotraumaShared/SharedSource/DebugConsole.cs b/Barotrauma/BarotraumaShared/SharedSource/DebugConsole.cs index 927c9a533..90e0402f0 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/DebugConsole.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/DebugConsole.cs @@ -984,8 +984,8 @@ namespace Barotrauma commands.Add(new Command("teleportsub", "teleportsub [start/end/cursor]: Teleport the submarine to the position of the cursor, or the start or end of the level. WARNING: does not take outposts into account, so often leads to physics glitches. Only use for debugging.", (string[] args) => { - if (Submarine.MainSub == null || Level.Loaded == null) return; - if (Level.Loaded.Type == LevelData.LevelType.Outpost) + if (Submarine.MainSub == null) { return; } + if (Level.Loaded?.Type == LevelData.LevelType.Outpost && GameMain.GameSession != null) { NewMessage("The teleportsub command is unavailable in outpost levels!", Color.Red); return; @@ -1001,6 +1001,11 @@ namespace Barotrauma } else if (args[0].Equals("start", StringComparison.OrdinalIgnoreCase)) { + if (Level.Loaded == null) + { + NewMessage("Can't teleport the sub to the start of the level (no level loaded).", Color.Red); + return; + } Vector2 pos = Level.Loaded.StartPosition; if (Level.Loaded.StartOutpost != null) { @@ -1010,6 +1015,11 @@ namespace Barotrauma } else { + if (Level.Loaded == null) + { + NewMessage("Can't teleport the sub to the end of the level (no level loaded).", Color.Red); + return; + } Vector2 pos = Level.Loaded.EndPosition; if (Level.Loaded.EndOutpost != null) { @@ -1189,6 +1199,7 @@ namespace Barotrauma { foreach (Item it in Item.ItemList) { + if (it.GetComponent() != null) { continue; } it.Condition = it.MaxCondition; } }, null, true)); diff --git a/Barotrauma/BarotraumaShared/SharedSource/Events/Missions/Mission.cs b/Barotrauma/BarotraumaShared/SharedSource/Events/Missions/Mission.cs index 507d7b61f..718ad830a 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Events/Missions/Mission.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Events/Missions/Mission.cs @@ -355,7 +355,7 @@ namespace Barotrauma IEnumerable crewCharacters = GameSession.GetSessionCrewCharacters(); // use multipliers here so that we can easily add them together without introducing multiplicative XP stacking - var experienceGainMultiplier = new AbilityValue(1f); + var experienceGainMultiplier = new AbilityExperienceGainMultiplier(1f); crewCharacters.ForEach(c => c.CheckTalents(AbilityEffectType.OnAllyGainMissionExperience, experienceGainMultiplier)); crewCharacters.ForEach(c => experienceGainMultiplier.Value += c.GetStatValue(StatTypes.MissionExperienceGainMultiplier)); @@ -374,11 +374,11 @@ namespace Barotrauma #endif // apply money gains afterwards to prevent them from affecting XP gains - var moneyGainMission = new AbilityValueMission(1f, this); - crewCharacters.ForEach(c => c.CheckTalents(AbilityEffectType.OnGainMissionMoney, moneyGainMission)); - crewCharacters.ForEach(c => moneyGainMission.Value += c.GetStatValue(StatTypes.MissionMoneyGainMultiplier)); + var missionMoneyGainMultiplier = new AbilityMissionMoneyGainMultiplier(this, 1f); + crewCharacters.ForEach(c => c.CheckTalents(AbilityEffectType.OnGainMissionMoney, missionMoneyGainMultiplier)); + crewCharacters.ForEach(c => missionMoneyGainMultiplier.Value += c.GetStatValue(StatTypes.MissionMoneyGainMultiplier)); - campaign.Money += (int)(reward * moneyGainMission.Value); + campaign.Money += (int)(reward * missionMoneyGainMultiplier.Value); foreach (Character character in crewCharacters) { @@ -534,4 +534,16 @@ namespace Barotrauma cargoRoom.Rect.Y - cargoRoom.Rect.Height + itemPrefab.Size.Y / 2); } } + + class AbilityMissionMoneyGainMultiplier : AbilityObject, IAbilityValue, IAbilityMission + { + public AbilityMissionMoneyGainMultiplier(Mission mission, float moneyGainMultiplier) + { + Value = moneyGainMultiplier; + Mission = mission; + } + public float Value { get; set; } + public Mission Mission { get; set; } + } + } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Events/MonsterEvent.cs b/Barotrauma/BarotraumaShared/SharedSource/Events/MonsterEvent.cs index 21742b295..0735f65f6 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Events/MonsterEvent.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Events/MonsterEvent.cs @@ -15,6 +15,7 @@ namespace Barotrauma private readonly float scatter; private readonly float offset; + private readonly float delayBetweenSpawns; private Vector2? spawnPos; @@ -92,6 +93,7 @@ namespace Barotrauma offset = prefab.ConfigElement.GetAttributeFloat("offset", 0); scatter = Math.Clamp(prefab.ConfigElement.GetAttributeFloat("scatter", 500), 0, 3000); + delayBetweenSpawns = prefab.ConfigElement.GetAttributeFloat("delaybetweenspawns", 0.1f); if (GameMain.NetworkMember != null) { @@ -538,7 +540,7 @@ namespace Barotrauma SwarmBehavior.CreateSwarm(monsters.Cast()); DebugConsole.NewMessage($"Spawned: {ToString()}. Strength: {StringFormatter.FormatZeroDecimal(monsters.Sum(m => m.Params.AI.CombatStrength))}.", Color.LightBlue, debugOnly: true); } - }, Rand.Range(0f, amount / 2f)); + }, delayBetweenSpawns * i); } } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Events/ScriptedEvent.cs b/Barotrauma/BarotraumaShared/SharedSource/Events/ScriptedEvent.cs index 13c0fc231..5be24397f 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Events/ScriptedEvent.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Events/ScriptedEvent.cs @@ -45,6 +45,8 @@ namespace Barotrauma requiredDestinationTypes = prefab.ConfigElement.GetAttributeStringArray("requireddestinationtypes", null); RequireBeaconStation = prefab.ConfigElement.GetAttributeBool("requirebeaconstation", false); + + GameAnalyticsManager.AddDesignEvent($"ScriptedEvent:{prefab.Identifier}:Start"); } public void AddTarget(string tag, Entity target) @@ -229,5 +231,11 @@ namespace Barotrauma } return false; } + + public override void Finished() + { + base.Finished(); + GameAnalyticsManager.AddDesignEvent($"ScriptedEvent:{prefab.Identifier}:Finished:{CurrentActionIndex}"); + } } } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Extensions/IEnumerableExtensions.cs b/Barotrauma/BarotraumaShared/SharedSource/Extensions/IEnumerableExtensions.cs index bc72b77cf..89327c8f0 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Extensions/IEnumerableExtensions.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Extensions/IEnumerableExtensions.cs @@ -133,7 +133,7 @@ namespace Barotrauma.Extensions return source.Count(predicate) > 1; } } - + public static IEnumerable ToEnumerable(this T item) { yield return item; @@ -196,5 +196,28 @@ namespace Barotrauma.Extensions } return -1; } + + /// + /// Same as FirstOrDefault but will always return null instead of default(T) when no element is found + /// + public static T? FirstOrNull(this IEnumerable source, Func predicate) where T : struct + { + if (source.FirstOrDefault(predicate) is var first && !first.Equals(default(T))) + { + return first; + } + + return null; + } + + public static T? FirstOrNull(this IEnumerable source) where T : struct + { + if (source.FirstOrDefault() is var first && !first.Equals(default(T))) + { + return first; + } + + return null; + } } } diff --git a/Barotrauma/BarotraumaShared/SharedSource/GameAnalytics/GameAnalyticsConsent.cs b/Barotrauma/BarotraumaShared/SharedSource/GameAnalytics/GameAnalyticsConsent.cs index 6d0e4d255..b4f8652c1 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/GameAnalytics/GameAnalyticsConsent.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/GameAnalytics/GameAnalyticsConsent.cs @@ -149,6 +149,13 @@ namespace Barotrauma SetConsent(Consent.Error); } + if (!SteamManager.IsInitialized) + { + DebugConsole.AddWarning("Error in GameAnalyticsManager.GetConsent: Could not get a Steam authentication ticket (not connected to Steam)."); + SetConsent(Consent.Error); + return; + } + string authTicketStr; try { @@ -183,7 +190,7 @@ namespace Barotrauma return; } - var response = ((Task)t).Result; + if (!t.TryGetResult(out IRestResponse response)) { return; } if (!CheckResponse(response)) { SetConsent(Consent.Error); diff --git a/Barotrauma/BarotraumaShared/SharedSource/GameAnalytics/GameAnalyticsManager.cs b/Barotrauma/BarotraumaShared/SharedSource/GameAnalytics/GameAnalyticsManager.cs index 71a7a7a68..7a0033bce 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/GameAnalytics/GameAnalyticsManager.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/GameAnalytics/GameAnalyticsManager.cs @@ -367,7 +367,6 @@ namespace Barotrauma + GameMain.Version.ToString() + exeName + ":" + ((exeHash?.ShortHash == null) ? "Unknown" : exeHash.ShortHash) + ":" - + AssemblyInfo.GitBranch + ":" + AssemblyInfo.GitRevision + ":" + buildConfiguration); } diff --git a/Barotrauma/BarotraumaShared/SharedSource/GameSession/CrewManager.cs b/Barotrauma/BarotraumaShared/SharedSource/GameSession/CrewManager.cs index 5aa20f202..aac23f1d6 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/GameSession/CrewManager.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/GameSession/CrewManager.cs @@ -47,7 +47,9 @@ namespace Barotrauma { if (order.TargetEntity == null) { - DebugConsole.ThrowError("Attempted to add an order with no target entity to CrewManager!\n" + Environment.StackTrace.CleanupStackTrace()); + string message = $"Attempted to add a \"{order.Name}\" order with no target entity to CrewManager!\n{Environment.StackTrace.CleanupStackTrace()}"; + DebugConsole.AddWarning(message); + GameAnalyticsManager.AddErrorEventOnce("CrewManager.AddOrder:OrderTargetEntityNull", GameAnalyticsManager.ErrorSeverity.Error, message); return false; } @@ -185,6 +187,10 @@ namespace Barotrauma public void InitRound() { +#if CLIENT + GUIContextMenu.CurrentContextMenu = null; +#endif + characters.Clear(); List spawnWaypoints = null; @@ -437,17 +443,17 @@ namespace Barotrauma return filteredCharacters // 1. Prioritize those who are on the same submarine than the controlled character .OrderByDescending(c => Character.Controlled == null || c.Submarine == Character.Controlled.Submarine) - // 2. Prioritize those who have been given the same maintenance or operate order as now issued - .ThenByDescending(c => c.CurrentOrders.Any(o => - o.Order != null && o.Order.Identifier == order.Identifier && - (order.Category == OrderCategory.Maintenance || order.Category == OrderCategory.Operate))) + // 2. Prioritize those who are already ordered to operate the device + .ThenByDescending(c => order.Category == OrderCategory.Operate && c.CurrentOrders.Any(o => o.Order != null && o.Order.Identifier == order.Identifier && o.Order.TargetEntity == order.TargetEntity)) // 3. Prioritize those with the appropriate job for the order .ThenByDescending(c => order.HasAppropriateJob(c)) - // 4. Prioritize bots over player controlled characters + // 4. Prioritize those who don't yet have another Operate order of the same kind (which allows quick-assigning multiple Operate orders to different characters) + .ThenByDescending(c => order.Category == OrderCategory.Operate && c.CurrentOrders.None(o => o.Order != null && o.Order.Identifier == order.Identifier)) + // 5. Prioritize bots over player controlled characters .ThenByDescending(c => c.IsBot) - // 5. Use the priority value of the current objective + // 6. Use the priority value of the current objective .ThenBy(c => c.AIController is HumanAIController humanAI ? humanAI.ObjectiveManager.CurrentObjective?.Priority : 0) - // 6. Prioritize those with the best skill for the order + // 7. Prioritize those with the best skill for the order .ThenByDescending(c => c.GetSkillLevel(order.AppropriateSkill)); } diff --git a/Barotrauma/BarotraumaShared/SharedSource/GameSession/GameModes/CampaignMode.cs b/Barotrauma/BarotraumaShared/SharedSource/GameSession/GameModes/CampaignMode.cs index ff3462958..5602ed210 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/GameSession/GameModes/CampaignMode.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/GameSession/GameModes/CampaignMode.cs @@ -78,10 +78,11 @@ namespace Barotrauma //there can be no events before this time has passed during the 1st campaign round const float FirstRoundEventDelay = 0.0f; - public enum InteractionType { None, Talk, Examine, Map, Crew, Store, Repair, Upgrade, PurchaseSub } + public enum InteractionType { None, Talk, Examine, Map, Crew, Store, Repair, Upgrade, PurchaseSub, MedicalClinic } public readonly CargoManager CargoManager; public UpgradeManager UpgradeManager; + public MedicalClinic MedicalClinic; public List Factions; @@ -176,6 +177,7 @@ namespace Barotrauma { Money = InitialMoney; CargoManager = new CargoManager(this); + MedicalClinic = new MedicalClinic(this); } /// diff --git a/Barotrauma/BarotraumaShared/SharedSource/GameSession/GameModes/MultiPlayerCampaign.cs b/Barotrauma/BarotraumaShared/SharedSource/GameSession/GameModes/MultiPlayerCampaign.cs index 1191f30c4..785f21700 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/GameSession/GameModes/MultiPlayerCampaign.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/GameSession/GameModes/MultiPlayerCampaign.cs @@ -192,6 +192,37 @@ namespace Barotrauma } #endif } + + + public static List GetCampaignSubs() + { + bool isSubmarineVisible(SubmarineInfo s) + => !GameMain.NetworkMember.ServerSettings.HiddenSubs.Any(h + => s.Name.Equals(h, StringComparison.OrdinalIgnoreCase)); + + List availableSubs = + SubmarineInfo.SavedSubmarines + .Where(s => + s.IsCampaignCompatible + && isSubmarineVisible(s)) + .ToList(); + + if (!availableSubs.Any()) + { + //None of the available subs were marked as campaign-compatible, just include all visible subs + availableSubs.AddRange( + SubmarineInfo.SavedSubmarines + .Where(isSubmarineVisible)); + } + + if (!availableSubs.Any()) + { + //No subs are visible at all! Just make the selected one available + availableSubs.Add(GameMain.NetLobbyScreen.SelectedSub); + } + + return availableSubs; + } } } diff --git a/Barotrauma/BarotraumaShared/SharedSource/GameSession/GameSession.cs b/Barotrauma/BarotraumaShared/SharedSource/GameSession/GameSession.cs index f1c9f4762..58a58c0a7 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/GameSession/GameSession.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/GameSession/GameSession.cs @@ -411,9 +411,9 @@ namespace Barotrauma GameAnalyticsManager.ProgressionStatus.Start, GameMode?.Name ?? "none"); - string eventId = "StartRound:GameMode:" + (GameMode?.Name ?? "none") + ":"; + string eventId = "StartRound:" + (GameMode?.Preset?.Identifier ?? "none") + ":"; GameAnalyticsManager.AddDesignEvent(eventId + "Submarine:" + (Submarine.MainSub?.Info?.Name ?? "none")); - GameAnalyticsManager.AddDesignEvent(eventId + "GameMode:" + (GameMode?.Name ?? "none")); + GameAnalyticsManager.AddDesignEvent(eventId + "GameMode:" + (GameMode?.Preset?.Identifier ?? "none")); GameAnalyticsManager.AddDesignEvent(eventId + "CrewSize:" + (CrewManager?.CharacterInfos?.Count() ?? 0)); foreach (Mission mission in missions) { @@ -421,6 +421,17 @@ namespace Barotrauma } GameAnalyticsManager.AddDesignEvent(eventId + "LevelType:" + (Level.Loaded?.Type.ToString() ?? "none")); GameAnalyticsManager.AddDesignEvent(eventId + "Biome:" + (Level.Loaded?.LevelData?.Biome?.Identifier ?? "none")); + if (GameMode is CampaignMode campaignMode) + { + if (campaignMode.Map?.Radiation != null && campaignMode.Map.Radiation.Enabled) + { + GameAnalyticsManager.AddDesignEvent(eventId + "RadiationEnabled"); + } + else + { + GameAnalyticsManager.AddDesignEvent(eventId + "RadiationDisabled"); + } + } #if CLIENT if (GameMode is CampaignMode) { SteamAchievementManager.OnBiomeDiscovered(levelData.Biome); } @@ -457,6 +468,8 @@ namespace Barotrauma } } + ReadyCheck.ReadyCheckCooldown = DateTime.MinValue; + GUI.PreventPauseMenuToggle = false; HintManager.OnRoundStarted(); @@ -895,14 +908,7 @@ namespace Barotrauma ((CampaignMode)GameMode).Save(doc.Root); - try - { - doc.SaveSafe(filePath); - } - catch (Exception e) - { - DebugConsole.ThrowError("Saving gamesession to \"" + filePath + "\" failed!", e); - } + doc.SaveSafe(filePath, throwExceptions: true); } /*public void Load(XElement saveElement) diff --git a/Barotrauma/BarotraumaShared/SharedSource/GameSession/MedicalClinic.cs b/Barotrauma/BarotraumaShared/SharedSource/GameSession/MedicalClinic.cs new file mode 100644 index 000000000..1847ebf36 --- /dev/null +++ b/Barotrauma/BarotraumaShared/SharedSource/GameSession/MedicalClinic.cs @@ -0,0 +1,348 @@ +#nullable enable + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Linq; +using Barotrauma.Extensions; + +namespace Barotrauma +{ + internal partial class MedicalClinic + { + public enum NetworkHeader + { + REQUEST_AFFLICTIONS, + REQUEST_PENDING, + ADD_PENDING, + REMOVE_PENDING, + CLEAR_PENDING, + HEAL_PENDING + } + + public enum AfflictionSeverity + { + Low, + Medium, + High + } + + public enum MessageFlag + { + Response, // responding to your request + Announce // responding to someone else's request + } + + public enum HealRequestResult + { + Unknown, // everything is not ok + Success, // everything ok + InsufficientFunds, // not enough money + Refused // the outpost has refused to provide medical assistance + } + + [NetworkSerialize] + public struct NetHealRequest : INetSerializableStruct + { + public HealRequestResult Result; + } + + [NetworkSerialize] + public struct NetRemovedAffliction : INetSerializableStruct + { + public NetCrewMember CrewMember; + public NetAffliction Affliction; + } + + public struct NetPendingCrew : INetSerializableStruct + { + [NetworkSerialize(ArrayMaxSize = CrewManager.MaxCrewSize)] + public NetCrewMember[] CrewMembers; + } + + public struct NetAffliction : INetSerializableStruct + { + [NetworkSerialize] + public string Identifier; + + [NetworkSerialize] + public ushort Strength; + + [NetworkSerialize] + public ushort Price; + + public AfflictionSeverity AfflictionSeverity + { + get + { + if (Prefab is null) { return AfflictionSeverity.Low; } + + float normalizedStrength = Strength / Prefab.MaxStrength; + + // lesser than 0.1 + if (normalizedStrength <= 0.1) + { + return AfflictionSeverity.Low; + } + + // between 0.1 and 0.5 + if (normalizedStrength > 0.1f && normalizedStrength < 0.5f) + { + return AfflictionSeverity.Medium; + } + + // greater than 0.5 + return AfflictionSeverity.High; + } + } + + public Affliction Affliction + { + set + { + Identifier = value.Identifier; + Strength = (ushort)Math.Ceiling(value.Strength); + Price = (ushort)(Strength * value.Prefab.HealCostMultiplier); + } + } + + private AfflictionPrefab? cachedPrefab; + + public AfflictionPrefab? Prefab + { + get + { + if (cachedPrefab is { } cached) { return cached; } + + foreach (AfflictionPrefab prefab in AfflictionPrefab.List) + { + if (prefab.Identifier.Equals(Identifier, StringComparison.OrdinalIgnoreCase)) + { + cachedPrefab = prefab; + return prefab; + } + } + + return null; + } + set + { + cachedPrefab = value; + Identifier = value?.Identifier ?? string.Empty; + Strength = 0; + Price = 0; + } + } + + public readonly bool AfflictionEquals(AfflictionPrefab prefab) + { + return prefab.Identifier.Equals(Identifier, StringComparison.OrdinalIgnoreCase); + } + + public readonly bool AfflictionEquals(NetAffliction affliction) + { + return affliction.Identifier.Equals(Identifier, StringComparison.OrdinalIgnoreCase); + } + } + + public struct NetCrewMember : INetSerializableStruct + { + [NetworkSerialize] + public int CharacterInfoID; + + [NetworkSerialize] + public NetAffliction[] Afflictions; + + public CharacterInfo CharacterInfo + { + set => CharacterInfoID = value.GetIdentifierUsingOriginalName(); + } + + public readonly CharacterInfo? FindCharacterInfo(ImmutableArray crew) + { + foreach (CharacterInfo info in crew) + { + if (info.GetIdentifierUsingOriginalName() == CharacterInfoID) + { + return info; + } + } + + return null; + } + + public readonly bool CharacterEquals(NetCrewMember crewMember) + { + return crewMember.CharacterInfoID == CharacterInfoID; + } + } + + private readonly CampaignMode? campaign; + + public MedicalClinic(CampaignMode campaign) + { + this.campaign = campaign; + } + + public readonly List PendingHeals = new List(); + + public Action? OnUpdate; + + private static bool IsOutpostInCombat() + { + if (!(Level.Loaded is { Type: LevelData.LevelType.Outpost })) { return false; } + + IEnumerable crew = GetCrewCharacters().Where(c => c.Character != null).Select(c => c.Character).ToImmutableHashSet(); + + foreach (Character npc in Character.CharacterList.Where(c => c.TeamID == CharacterTeamType.FriendlyNPC)) + { + bool isInCombatWithCrew = !npc.IsInstigator && npc.AIController is HumanAIController { ObjectiveManager: { CurrentObjective: AIObjectiveCombat combatObjective } } && crew.Contains(combatObjective.Enemy); + if (isInCombatWithCrew) { return true; } + } + + return false; + } + + private HealRequestResult HealAllPending(bool force = false) + { + int totalCost = GetTotalCost(); + if (!force) + { + if (GetMoney() < totalCost) { return HealRequestResult.InsufficientFunds; } + + if (IsOutpostInCombat()) { return HealRequestResult.Refused; } + } + + ImmutableArray crew = GetCrewCharacters(); + foreach (NetCrewMember crewMember in PendingHeals) + { + CharacterInfo? targetCharacter = crewMember.FindCharacterInfo(crew); + if (!(targetCharacter?.Character is { CharacterHealth: { } health })) { continue; } + + foreach (NetAffliction affliction in crewMember.Afflictions) + { + health.ReduceAffliction(null, affliction.Identifier, affliction.Prefab?.MaxStrength ?? affliction.Strength); + } + } + + if (campaign != null) + { + campaign.Money -= totalCost; + } + + ClearPendingHeals(); + + return HealRequestResult.Success; + } + + private void ClearPendingHeals() + { + PendingHeals.Clear(); + } + + private void RemovePendingAffliction(NetCrewMember crewMember, NetAffliction affliction) + { + foreach (NetCrewMember listMember in PendingHeals.ToList()) + { + PendingHeals.Remove(listMember); + NetCrewMember pendingMember = listMember; + + if (pendingMember.CharacterEquals(crewMember)) + { + List newAfflictions = new List(); + foreach (NetAffliction pendingAffliction in pendingMember.Afflictions) + { + if (pendingAffliction.AfflictionEquals(affliction)) { continue; } + + newAfflictions.Add(pendingAffliction); + } + + pendingMember.Afflictions = newAfflictions.ToArray(); + } + + if (!pendingMember.Afflictions.Any()) { continue; } + + PendingHeals.Add(pendingMember); + } + } + + private void InsertPendingCrewMember(NetCrewMember crewMember) + { + if (PendingHeals.FirstOrNull(m => m.CharacterEquals(crewMember)) is { } foundHeal) + { + PendingHeals.Remove(foundHeal); + } + + PendingHeals.Add(crewMember); + } + + private NetAffliction[] GetAllAfflictions(CharacterHealth health) + { + IEnumerable rawAfflictions = health.GetAllAfflictions().Where(a => !a.Prefab.IsBuff && a.Strength > GetShowTreshold(a)); + + List afflictions = new List(); + + foreach (Affliction affliction in rawAfflictions) + { + NetAffliction newAffliction; + if (afflictions.FirstOrNull(netAffliction => netAffliction.AfflictionEquals(affliction.Prefab)) is { } foundAffliction) + { + afflictions.Remove(foundAffliction); + foundAffliction.Strength += (ushort)affliction.Strength; + foundAffliction.Price += (ushort)GetAdjustedPrice((int)(affliction.Prefab.HealCostMultiplier * affliction.Strength)); + newAffliction = foundAffliction; + } + else + { + newAffliction = new NetAffliction { Affliction = affliction }; + newAffliction.Price = (ushort)GetAdjustedPrice(newAffliction.Price); + } + + afflictions.Add(newAffliction); + } + + return afflictions.ToArray(); + + static float GetShowTreshold(Affliction affliction) => Math.Max(0, Math.Min(affliction.Prefab.ShowIconToOthersThreshold, affliction.Prefab.ShowInHealthScannerThreshold)); + } + + public int GetTotalCost() => PendingHeals.SelectMany(h => h.Afflictions).Aggregate(0, (current, affliction) => current + affliction.Price); + + private int GetAdjustedPrice(int price) => campaign?.Map?.CurrentLocation is { Type: { HasOutpost: true } } currentLocation ? currentLocation.GetAdjustedHealCost(price) : int.MaxValue; + + public int GetMoney() => campaign?.Money ?? 0; + + public static ImmutableArray GetCrewCharacters() + { +#if DEBUG && CLIENT + if (Screen.Selected is TestScreen) + { + return TestInfos.ToImmutableArray(); + } +#endif + + return Character.CharacterList.Where(c => c.Info != null && c.TeamID == CharacterTeamType.Team1).Select(c => c.Info).ToImmutableArray(); + } + +#if DEBUG && CLIENT + private static readonly CharacterInfo[] TestInfos = + { + new CharacterInfo("human"), + new CharacterInfo("human"), + new CharacterInfo("human"), + new CharacterInfo("human"), + new CharacterInfo("human"), + new CharacterInfo("human"), + new CharacterInfo("human") + }; + + private static readonly NetAffliction[] TestAfflictions = + { + new NetAffliction { Identifier = "internaldamage", Strength = 80, Price = 10 }, + new NetAffliction { Identifier = "blunttrauma", Strength = 50, Price = 10 }, + new NetAffliction { Identifier = "lacerations", Strength = 20, Price = 10 }, + new NetAffliction { Identifier = "burn", Strength = 10, Price = 10 } + }; +#endif + } +} \ No newline at end of file diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Door.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Door.cs index 2ff2e7d77..1689b9909 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Door.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Door.cs @@ -144,16 +144,6 @@ namespace Barotrauma.Items.Components if (linkedGap == null) { Rectangle rect = item.Rect; - if (IsHorizontal) - { - rect.Y += 5; - rect.Height += 10; - } - else - { - rect.X -= 5; - rect.Width += 10; - } linkedGap = new Gap(rect, !IsHorizontal, Item.Submarine) { Submarine = item.Submarine diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/EntitySpawnerComponent.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/EntitySpawnerComponent.cs index e73ea86f1..5ab363484 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/EntitySpawnerComponent.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/EntitySpawnerComponent.cs @@ -55,17 +55,22 @@ namespace Barotrauma.Items.Components [Editable(MaxValueFloat = int.MaxValue, MinValueFloat = 1f, ValueStep = 1f, DecimalCount = 0), Serialize("1,3", true, "Minumum and maximum amount of items or creatures to spawn in one attempt")] public Vector2 SpawnAmountRange { get; set; } - [Editable(MinValueInt = int.MinValue, MaxValueInt = int.MaxValue), Serialize(8, true, "Amount of items or creatures in the spawn area that will prevent further items or creatures from being spawned")] + [Editable(MinValueInt = 0, MaxValueInt = int.MaxValue), Serialize(8, true, "Total maximum amount of items or creatures that can be spawned. 0 = unrestricted.")] public int MaximumAmount { get; set; } - [Editable(MaxValueFloat = int.MaxValue, MinValueFloat = int.MinValue, ValueStep = 10f), Serialize(500f, true, "Inflate the circle of rectangle by this value to extend the area that counts towards the maximum amount of items or enemies to be spawned")] + [Editable(MinValueInt = 0, MaxValueInt = int.MaxValue), Serialize(8, true, "Amount of items or creatures in the spawn area that will prevent further items or creatures from being spawned. 0 = unrestricted.")] + public int MaximumAmountInArea { get; set; } + + [Editable(MaxValueFloat = int.MaxValue, MinValueFloat = 0, ValueStep = 10f), Serialize(500f, true, "Inflate the circle of rectangle by this value to extend the area that counts towards the maximum amount of items or enemies to be spawned")] public float MaximumAmountRangePadding { get; set; } [Serialize(true, true, "")] public bool CanSpawn { get; set; } = true; - private float SpawnTimer; - private float? SpawnTimerGoal; + private float spawnTimer; + private float? spawnTimerGoal; + + private int spawnedAmount = 0; public EntitySpawnerComponent(Item item, XElement element) : base(item, element) { @@ -115,15 +120,15 @@ namespace Barotrauma.Items.Components if (minTime < 0 && maxTime < 0) { return; } - SpawnTimerGoal ??= Rand.Range(minTime, maxTime, Rand.RandSync.Unsynced); + spawnTimerGoal ??= Rand.Range(minTime, maxTime, Rand.RandSync.Unsynced); - SpawnTimer += deltaTime; + spawnTimer += deltaTime; - if (SpawnTimer > SpawnTimerGoal) + if (spawnTimer > spawnTimerGoal) { Spawn(); - SpawnTimerGoal = null; - SpawnTimer = 0; + spawnTimerGoal = null; + spawnTimer = 0; } } @@ -149,12 +154,12 @@ namespace Barotrauma.Items.Components private RectangleF GetAreaRectangle(Vector2 size, Vector2 offset, bool draw) { Vector2 pos = item.WorldPosition; + pos += offset; if (draw) { pos.Y = -pos.Y; } - pos += offset; RectangleF rect = new RectangleF(pos.X - size.X / 2f, pos.Y - size.Y / 2f, size.X, size.Y); return rect; } @@ -162,6 +167,7 @@ namespace Barotrauma.Items.Components private bool CanSpawnMore() { if (!CanSpawn) { return false; } + if (MaximumAmount > 0 && spawnedAmount >= MaximumAmount) { return false; } if (OnlySpawnWhenCrewInRange) { @@ -171,10 +177,9 @@ namespace Barotrauma.Items.Components } } - if (MaximumAmount < 0) { return true; } + if (MaximumAmountInArea <= 0) { return true; } int amount; - if (!string.IsNullOrWhiteSpace(SpeciesName)) { amount = Character.CharacterList.Count(c => !c.IsDead && c.SpeciesName.Equals(SpeciesName, StringComparison.OrdinalIgnoreCase) && IsInRange(c.WorldPosition, crewArea: false, rangePad: true)); @@ -188,13 +193,12 @@ namespace Barotrauma.Items.Components return false; } - return amount < MaximumAmount; + return amount < MaximumAmountInArea; } private bool IsInRange(Vector2 worldPos, bool crewArea = false, bool rangePad = false) { Vector2 offset = crewArea ? CrewAreaOffset : SpawnAreaOffset; - offset.Y = -offset.Y; switch (crewArea ? CrewAreaShape : SpawnAreaShape) { case AreaShape.Circle: @@ -269,6 +273,7 @@ namespace Barotrauma.Items.Components string[] allSpecies = SpeciesName.Split(','); string species = allSpecies.GetRandom().Trim(); Entity.Spawner?.AddToSpawnQueue(species, pos); + spawnedAmount++; } else if (!string.IsNullOrWhiteSpace(ItemIdentifier)) { @@ -283,6 +288,7 @@ namespace Barotrauma.Items.Components } Entity.Spawner?.AddToSpawnQueue(prefab, pos, item.Submarine); + spawnedAmount++; } } } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/GeneticMaterial.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/GeneticMaterial.cs index 636c96300..194f60d6d 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/GeneticMaterial.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/GeneticMaterial.cs @@ -74,6 +74,7 @@ namespace Barotrauma.Items.Components a.Identifier.Equals(Effect, StringComparison.OrdinalIgnoreCase) || a.AfflictionType.Equals(Effect, StringComparison.OrdinalIgnoreCase)).GetRandom(); } + Tainted = true; } [Serialize(3.0f, false)] @@ -94,37 +95,28 @@ namespace Barotrauma.Items.Components if (targetCharacter != null) { return; } - if (tainted) - { - if (selectedTaintedEffect != null) - { - float selectedTaintedEffectStrength = item.ConditionPercentage / 100.0f * selectedTaintedEffect.MaxStrength; - character.CharacterHealth.ApplyAffliction(null, selectedTaintedEffect.Instantiate(selectedTaintedEffectStrength)); - var existingAffliction = character.CharacterHealth.GetAllAfflictions().FirstOrDefault(a => a.Prefab == selectedTaintedEffect); - if (existingAffliction != null) - { - existingAffliction.Strength = selectedTaintedEffectStrength; - } - targetCharacter = character; -#if SERVER - item.CreateServerEvent(this); -#endif - } - } if (selectedEffect != null) { - ApplyStatusEffects(ActionType.OnWearing, 1.0f); - float selectedEffectStrength = item.ConditionPercentage / 100.0f * selectedEffect.MaxStrength; - character.CharacterHealth.ApplyAffliction(null, selectedEffect.Instantiate(selectedEffectStrength)); - var existingAffliction = character.CharacterHealth.GetAllAfflictions().FirstOrDefault(a => a.Prefab == selectedEffect); - if (existingAffliction != null) - { - existingAffliction.Strength = selectedEffectStrength; - } targetCharacter = character; + ApplyStatusEffects(ActionType.OnWearing, 1.0f); + float selectedEffectStrength = GetCombinedEffectStrength(); + character.CharacterHealth.ApplyAffliction(null, selectedEffect.Instantiate(selectedEffectStrength)); + var affliction = character.CharacterHealth.GetAllAfflictions().FirstOrDefault(a => a.Prefab == selectedEffect); + if (affliction != null) { affliction.Strength = selectedEffectStrength; } #if SERVER item.CreateServerEvent(this); #endif + } + if (tainted && selectedTaintedEffect != null) + { + float selectedTaintedEffectStrength = GetCombinedTaintedEffectStrength(); + character.CharacterHealth.ApplyAffliction(null, selectedTaintedEffect.Instantiate(selectedTaintedEffectStrength)); + var affliction = character.CharacterHealth.GetAllAfflictions().FirstOrDefault(a => a.Prefab == selectedTaintedEffect); + if (affliction != null) { affliction.Strength = selectedTaintedEffectStrength; } + targetCharacter = character; +#if SERVER + item.CreateServerEvent(this); +#endif } foreach (Item containedItem in item.ContainedItems) { @@ -142,13 +134,14 @@ namespace Barotrauma.Items.Components (rootContainer == null || !targetCharacter.HasEquippedItem(rootContainer) || !targetCharacter.Inventory.IsInLimbSlot(rootContainer, InvSlotType.HealthInterface))) { item.ApplyStatusEffects(ActionType.OnSevered, 1.0f, targetCharacter); - targetCharacter.CharacterHealth.ReduceAffliction(null, selectedEffect.Identifier, selectedEffect.MaxStrength); - if (tainted) - { - targetCharacter.CharacterHealth.ReduceAffliction(null, selectedTaintedEffect.Identifier, selectedTaintedEffect.MaxStrength); - } - targetCharacter = null; IsActive = false; + + var affliction = targetCharacter.CharacterHealth.GetAllAfflictions().FirstOrDefault(a => a.Prefab == selectedEffect); + if (affliction != null) { affliction.Strength = GetCombinedEffectStrength(); } + var taintedAffliction = targetCharacter.CharacterHealth.GetAllAfflictions().FirstOrDefault(a => a.Prefab == selectedTaintedEffect); + if (taintedAffliction != null) { taintedAffliction.Strength = GetCombinedTaintedEffectStrength(); } + + targetCharacter = null; } } } @@ -184,6 +177,36 @@ namespace Barotrauma.Items.Components } } + private float GetCombinedEffectStrength() + { + float effectStrength = 0.0f; + foreach (Item otherItem in targetCharacter.Inventory.FindAllItems(recursive: true)) + { + var geneticMaterial = otherItem.GetComponent(); + if (geneticMaterial == null || !geneticMaterial.IsActive) { continue; } + if (geneticMaterial.selectedEffect == selectedEffect) + { + effectStrength += otherItem.ConditionPercentage / 100.0f * selectedEffect.MaxStrength; + } + } + return effectStrength; + } + + private float GetCombinedTaintedEffectStrength() + { + float taintedEffectStrength = 0.0f; + foreach (Item otherItem in targetCharacter.Inventory.FindAllItems(recursive: true)) + { + var geneticMaterial = otherItem.GetComponent(); + if (geneticMaterial == null || !geneticMaterial.IsActive) { continue; } + if (selectedTaintedEffect != null && geneticMaterial.selectedTaintedEffect == selectedTaintedEffect) + { + taintedEffectStrength += otherItem.ConditionPercentage / 100.0f * selectedTaintedEffect.MaxStrength; + } + } + return taintedEffectStrength; + } + private float GetTaintedProbabilityOnRefine(Character user) { if (user == null) { return 1.0f; } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Growable.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Growable.cs index bb67dea57..9e35e423b 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Growable.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Growable.cs @@ -278,7 +278,7 @@ namespace Barotrauma.Items.Components for (int i = 0, j = 0; i < maxSides; i++) { - if (!occupiedSides.IsBitSet((TileSide) (1 << i))) + if (!occupiedSides.HasFlag((TileSide) (1 << i))) { pool[j] = i; j++; @@ -303,7 +303,7 @@ namespace Barotrauma.Items.Components public bool CanGrowMore() => (Sides | BlockedSides).Count() < 4; - public bool IsSideBlocked(TileSide side) => BlockedSides.IsBitSet(side) || Sides.IsBitSet(side); + public bool IsSideBlocked(TileSide side) => BlockedSides.HasFlag(side) || Sides.HasFlag(side); public static Rectangle CreatePlantRect(Vector2 pos) => new Rectangle((int) pos.X - Size / 2, (int) pos.Y + Size / 2, Size, Size); } @@ -774,7 +774,7 @@ namespace Barotrauma.Items.Components TileSide oppositeSide = connectingSide.GetOppositeSide(); - if (otherVine.BlockedSides.IsBitSet(connectingSide)) + if (otherVine.BlockedSides.HasFlag(connectingSide)) { newVine.BlockedSides |= oppositeSide; continue; diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Holdable/Holdable.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Holdable/Holdable.cs index c03c26b72..99ef8136d 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Holdable/Holdable.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Holdable/Holdable.cs @@ -166,7 +166,7 @@ namespace Barotrauma.Items.Components Pusher = new PhysicsBody(item.body.width, item.body.height, item.body.radius, item.body.Density) { BodyType = BodyType.Dynamic, - CollidesWith = Physics.CollisionCharacter, + CollidesWith = Physics.CollisionCharacter | Physics.CollisionProjectile, CollisionCategories = Physics.CollisionItemBlocking, Enabled = false, UserData = this @@ -604,7 +604,14 @@ namespace Barotrauma.Items.Components int maxAttachableCount = (int)character.Info.GetSavedStatValue(StatTypes.MaxAttachableCount, item.Prefab.Identifier); int currentlyAttachedCount = Item.ItemList.Count( i => i.Submarine == attachTarget?.Submarine && i.GetComponent() is Holdable holdable && holdable.Attached && i.Prefab.Identifier == item.prefab.Identifier); - if (currentlyAttachedCount >= maxAttachableCount) + if (maxAttachableCount == 0) + { +#if CLIENT + GUI.AddMessage(TextManager.Get("itemmsgrequiretraining"), Color.Red); +#endif + return false; + } + else if (currentlyAttachedCount >= maxAttachableCount) { #if CLIENT GUI.AddMessage($"{TextManager.Get("itemmsgtotalnumberlimited")} ({currentlyAttachedCount}/{maxAttachableCount})", Color.Red); @@ -801,7 +808,7 @@ namespace Barotrauma.Items.Components equipLimb = picker.AnimController.GetLimb(LimbType.Torso); } - if (equipLimb != null) + if (equipLimb != null && !equipLimb.Removed) { float itemAngle = (equipLimb.Rotation + holdAngle * picker.AnimController.Dir); @@ -814,6 +821,11 @@ namespace Barotrauma.Items.Components } } + public override void ReceiveSignal(Signal signal, Connection connection) + { + //do nothing + } + public override void FlipX(bool relativeToSub) { handlePos[0].X = -handlePos[0].X; diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Holdable/MeleeWeapon.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Holdable/MeleeWeapon.cs index 2233fd79a..ad88b23d0 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Holdable/MeleeWeapon.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Holdable/MeleeWeapon.cs @@ -115,7 +115,7 @@ namespace Barotrauma.Items.Components reloadTimer /= (1f + item.GetQualityModifier(Quality.StatType.StrikingSpeedMultiplier)); item.body.FarseerBody.CollisionCategories = Physics.CollisionProjectile; - item.body.FarseerBody.CollidesWith = Physics.CollisionCharacter | Physics.CollisionWall; + item.body.FarseerBody.CollidesWith = Physics.CollisionCharacter | Physics.CollisionWall | Physics.CollisionItemBlocking; item.body.FarseerBody.OnCollision += OnCollision; item.body.FarseerBody.IsBullet = true; item.body.PhysEnabled = true; @@ -361,6 +361,10 @@ namespace Barotrauma.Items.Components } hitTargets.Add(targetItem); } + else if (f2.Body.UserData is Holdable holdable && holdable.CanPush) + { + hitTargets.Add(holdable.Item); + } else { return false; @@ -411,6 +415,14 @@ namespace Barotrauma.Items.Components if (targetItem.Removed) { return; } Attack.DoDamage(User, targetItem, item.WorldPosition, 1.0f); } + else if (target.UserData is Holdable holdable && holdable.CanPush) + { + if (holdable.Item.Removed) { return; } + Attack.DoDamage(User, holdable.Item, item.WorldPosition, 1.0f); + RestoreCollision(); + hitting = false; + User = null; + } else { return; diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Holdable/Pickable.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Holdable/Pickable.cs index f2561695e..93001af68 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Holdable/Pickable.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Holdable/Pickable.cs @@ -74,7 +74,7 @@ namespace Barotrauma.Items.Components if (PickingTime > 0.0f) { - var abilityPickingTime = new AbilityValueItem(PickingTime, item.Prefab); + var abilityPickingTime = new AbilityItemPickingTime(PickingTime, item.Prefab); picker.CheckTalents(AbilityEffectType.OnItemPicked, abilityPickingTime); if (requiredItems.ContainsKey(RelatedItem.RelationType.Equipped)) @@ -300,4 +300,15 @@ namespace Barotrauma.Items.Components } } } + + class AbilityItemPickingTime : AbilityObject, IAbilityValue, IAbilityItemPrefab + { + public AbilityItemPickingTime(float pickingTime, ItemPrefab itemPrefab) + { + Value = pickingTime; + ItemPrefab = itemPrefab; + } + public float Value { get; set; } + public ItemPrefab ItemPrefab { get; set; } + } } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Holdable/RangedWeapon.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Holdable/RangedWeapon.cs index bee423e3d..e3ff2e8be 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Holdable/RangedWeapon.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Holdable/RangedWeapon.cs @@ -158,7 +158,7 @@ namespace Barotrauma.Items.Components return MathHelper.ToRadians(spread); } - private readonly List limbBodies = new List(); + private readonly List ignoredBodies = new List(); public override bool Use(float deltaTime, Character character = null) { tryingToCharge = true; @@ -172,8 +172,8 @@ namespace Barotrauma.Items.Components if (character != null) { - var abilityItem = new AbilityItem(item); - character.CheckTalents(AbilityEffectType.OnUseRangedWeapon, abilityItem); + var abilityRangedWeapon = new AbilityRangedWeapon(item); + character.CheckTalents(AbilityEffectType.OnUseRangedWeapon, abilityRangedWeapon); } if (item.AiTarget != null) @@ -182,11 +182,20 @@ namespace Barotrauma.Items.Components item.AiTarget.SightRange = item.AiTarget.MaxSightRange; } - limbBodies.Clear(); + ignoredBodies.Clear(); foreach (Limb l in character.AnimController.Limbs) { if (l.IsSevered) { continue; } - limbBodies.Add(l.body.FarseerBody); + ignoredBodies.Add(l.body.FarseerBody); + } + + foreach (Item heldItem in character.HeldItems) + { + var holdable = heldItem.GetComponent(); + if (holdable?.Pusher != null) + { + ignoredBodies.Add(holdable.Pusher.FarseerBody); + } } float degreeOfFailure = 1.0f - DegreeOfSuccess(character); @@ -211,7 +220,7 @@ namespace Barotrauma.Items.Components } float damageMultiplier = 1f + item.GetQualityModifier(Quality.StatType.FirepowerMultiplier); projectile.Launcher = item; - projectile.Shoot(character, character.AnimController.AimSourceSimPos, barrelPos, rotation + spread, ignoredBodies: limbBodies.ToList(), createNetworkEvent: false, damageMultiplier); + projectile.Shoot(character, character.AnimController.AimSourceSimPos, barrelPos, rotation + spread, ignoredBodies: ignoredBodies.ToList(), createNetworkEvent: false, damageMultiplier); projectile.Item.GetComponent()?.Attach(Item, projectile.Item); if (i == 0) { @@ -270,4 +279,12 @@ namespace Barotrauma.Items.Components partial void LaunchProjSpecific(); } + class AbilityRangedWeapon : AbilityObject, IAbilityItem + { + public AbilityRangedWeapon(Item item) + { + Item = item; + } + public Item Item { get; set; } + } } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Holdable/RepairTool.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Holdable/RepairTool.cs index bc9c658ae..ef6174f36 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Holdable/RepairTool.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Holdable/RepairTool.cs @@ -521,7 +521,7 @@ namespace Barotrauma.Items.Components if (!fixableEntities.Contains("structure") && !fixableEntities.Contains(targetStructure.Prefab.Identifier)) { return true; } - ApplyStatusEffectsOnTarget(user, deltaTime, ActionType.OnUse, new ISerializableEntity[] { targetStructure }); + ApplyStatusEffectsOnTarget(user, deltaTime, ActionType.OnUse, structure: targetStructure); FixStructureProjSpecific(user, deltaTime, targetStructure, sectionIndex); float structureFixAmount = StructureFixAmount; @@ -589,8 +589,7 @@ namespace Barotrauma.Items.Components closestLimb.body.ApplyForce(dir * TargetForce, maxVelocity: 10.0f); } - ApplyStatusEffectsOnTarget(user, deltaTime, ActionType.OnUse, - closestLimb == null ? new ISerializableEntity[] { targetCharacter } : new ISerializableEntity[] { targetCharacter, closestLimb }); + ApplyStatusEffectsOnTarget(user, deltaTime, ActionType.OnUse, character: targetCharacter, limb: closestLimb); FixCharacterProjSpecific(user, deltaTime, targetCharacter); return true; } @@ -606,7 +605,7 @@ namespace Barotrauma.Items.Components } targetLimb.character.LastDamageSource = item; - ApplyStatusEffectsOnTarget(user, deltaTime, ActionType.OnUse, new ISerializableEntity[] { targetLimb.character, targetLimb }); + ApplyStatusEffectsOnTarget(user, deltaTime, ActionType.OnUse, character: targetLimb.character, limb: targetLimb); FixCharacterProjSpecific(user, deltaTime, targetLimb.character); return true; } @@ -645,7 +644,7 @@ namespace Barotrauma.Items.Components targetItem.IsHighlighted = true; - ApplyStatusEffectsOnTarget(user, deltaTime, ActionType.OnUse, targetItem.AllPropertyObjects); + ApplyStatusEffectsOnTarget(user, deltaTime, ActionType.OnUse, targetItem); if (targetItem.body != null && !MathUtils.NearlyEqual(TargetForce, 0.0f)) { @@ -682,7 +681,7 @@ namespace Barotrauma.Items.Components Reset(); return true; } - if (leak.Submarine == null) + if (leak.Submarine == null || leak.Submarine != character.Submarine) { Reset(); return true; @@ -836,32 +835,44 @@ namespace Barotrauma.Items.Components } } - private void ApplyStatusEffectsOnTarget(Character user, float deltaTime, ActionType actionType, IEnumerable targets) + private static List currentTargets = new List(); + private void ApplyStatusEffectsOnTarget(Character user, float deltaTime, ActionType actionType, Item targetItem = null, Character character = null, Limb limb = null, Structure structure = null) { if (statusEffectLists == null) { return; } if (!statusEffectLists.TryGetValue(actionType, out List statusEffects)) { return; } + currentTargets.Clear(); foreach (StatusEffect effect in statusEffects) { effect.SetUser(user); if (effect.HasTargetType(StatusEffect.TargetType.UseTarget)) { - effect.Apply(actionType, deltaTime, item, targets); + if (targetItem != null) + { + currentTargets.AddRange(targetItem.AllPropertyObjects); + } + if (structure != null) + { + currentTargets.Add(structure); + } + effect.Apply(actionType, deltaTime, item, currentTargets); } else if (effect.HasTargetType(StatusEffect.TargetType.Character)) { - effect.Apply(actionType, deltaTime, item, targets.Where(t => t is Character)); + currentTargets.Add(character); + effect.Apply(actionType, deltaTime, item, currentTargets); } else if (effect.HasTargetType(StatusEffect.TargetType.Limb)) { - effect.Apply(actionType, deltaTime, item, targets.Where(t => t is Limb)); + currentTargets.Add(limb); + effect.Apply(actionType, deltaTime, item, currentTargets); } #if CLIENT if (user == null) { return; } // Hard-coded progress bars for welding doors stuck. // A general purpose system could be better, but it would most likely require changes in the way we define the status effects in xml. - foreach (ISerializableEntity target in targets) + foreach (ISerializableEntity target in currentTargets) { if (!(target is Door door)) { continue; } if (!door.CanBeWelded || !door.Item.IsInteractable(user)) { continue; } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/ItemComponent.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/ItemComponent.cs index 9f4fec7f2..45c52ad50 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/ItemComponent.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/ItemComponent.cs @@ -284,6 +284,43 @@ namespace Barotrauma.Items.Components SerializableProperties = SerializableProperty.DeserializeProperties(this, element); ParseMsg(); + string inheritRequiredSkillsFrom = element.GetAttributeString("inheritrequiredskillsfrom", ""); + if (!string.IsNullOrEmpty(inheritRequiredSkillsFrom)) + { + var component = item.Components.Find(ic => ic.Name.Equals(inheritRequiredSkillsFrom, StringComparison.OrdinalIgnoreCase)); + if (component == null) + { + DebugConsole.ThrowError($"Error in item \"{item.Name}\" - component \"{name}\" is set to inherit its required skills from \"{inheritRequiredSkillsFrom}\", but a component of that type couldn't be found."); + } + else + { + requiredSkills = component.requiredSkills; + } + } + + string inheritStatusEffectsFrom = element.GetAttributeString("inheritstatuseffectsfrom", ""); + if (!string.IsNullOrEmpty(inheritStatusEffectsFrom)) + { + var component = item.Components.Find(ic => ic.Name.Equals(inheritStatusEffectsFrom, StringComparison.OrdinalIgnoreCase)); + if (component == null) + { + DebugConsole.ThrowError($"Error in item \"{item.Name}\" - component \"{name}\" is set to inherit its StatusEffects from \"{inheritStatusEffectsFrom}\", but a component of that type couldn't be found."); + } + else if (component.statusEffectLists != null) + { + statusEffectLists ??= new Dictionary>(); + foreach (KeyValuePair> kvp in component.statusEffectLists) + { + if (!statusEffectLists.TryGetValue(kvp.Key, out List effectList)) + { + effectList = new List(); + statusEffectLists.Add(kvp.Key, effectList); + } + effectList.AddRange(kvp.Value); + } + } + } + foreach (XElement subElement in element.Elements()) { switch (subElement.Name.ToString().ToLowerInvariant()) @@ -315,19 +352,8 @@ namespace Barotrauma.Items.Components requiredSkills.Add(new Skill(skillIdentifier, subElement.GetAttributeInt("level", 0))); break; case "statuseffect": - var statusEffect = StatusEffect.Load(subElement, item.Name); - - if (statusEffectLists == null) statusEffectLists = new Dictionary>(); - - List effectList; - if (!statusEffectLists.TryGetValue(statusEffect.type, out effectList)) - { - effectList = new List(); - statusEffectLists.Add(statusEffect.type, effectList); - } - - effectList.Add(statusEffect); - + statusEffectLists ??= new Dictionary>(); + LoadStatusEffect(subElement); break; default: if (LoadElemProjSpecific(subElement)) { break; } @@ -342,6 +368,17 @@ namespace Barotrauma.Items.Components break; } } + + void LoadStatusEffect(XElement subElement) + { + var statusEffect = StatusEffect.Load(subElement, item.Name); + if (!statusEffectLists.TryGetValue(statusEffect.type, out List effectList)) + { + effectList = new List(); + statusEffectLists.Add(statusEffect.type, effectList); + } + effectList.Add(statusEffect); + } } private void SetActiveState(bool isActive) @@ -399,6 +436,8 @@ namespace Barotrauma.Items.Components return false; } + public virtual bool UpdateWhenInactive => false; + //called when isActive is true and condition > 0.0f public virtual void Update(float deltaTime, Camera cam) { @@ -798,7 +837,10 @@ namespace Barotrauma.Items.Components foreach (ItemComponent ic in item.Components) { if (ic.statusEffectLists == null || !ic.statusEffectLists.TryGetValue(ActionType.OnBroken, out List brokenEffects)) { continue; } - brokenEffects.ForEach(e => e.SetUser(user)); + foreach (var brokenEffect in brokenEffects) + { + brokenEffect.SetUser(user); + } } } @@ -1007,7 +1049,8 @@ namespace Barotrauma.Items.Components return 0.0f; } } - return 1.0f; + // Prefer items with the same identifier as the contained items' + return container.ContainsItemsWithSameIdentifier(i) ? 1.0f : 0.5f; } }; containObjective.Abandoned += () => aiController.IgnoredItems.Add(container.Item); diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/ItemContainer.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/ItemContainer.cs index a7559b690..d172c7553 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/ItemContainer.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/ItemContainer.cs @@ -208,12 +208,13 @@ namespace Barotrauma.Items.Components public override bool RecreateGUIOnResolutionChange => true; + public List ContainableItems { get; } + public ItemContainer(Item item, XElement element) : base(item, element) { int totalCapacity = capacity; - List containableItems = null; foreach (XElement subElement in element.Elements()) { switch (subElement.Name.ToString().ToLowerInvariant()) @@ -225,8 +226,8 @@ namespace Barotrauma.Items.Components DebugConsole.ThrowError("Error in item config \"" + item.ConfigFile + "\" - containable with no identifiers."); continue; } - containableItems ??= new List(); - containableItems.Add(containable); + ContainableItems ??= new List(); + ContainableItems.Add(containable); break; case "subcontainer": totalCapacity += subElement.GetAttributeInt("capacity", 1); @@ -237,7 +238,7 @@ namespace Barotrauma.Items.Components slotRestrictions = new SlotRestrictions[totalCapacity]; for (int i = 0; i < capacity; i++) { - slotRestrictions[i] = new SlotRestrictions(maxStackSize, containableItems); + slotRestrictions[i] = new SlotRestrictions(maxStackSize, ContainableItems); } int subContainerIndex = capacity; @@ -344,6 +345,19 @@ namespace Barotrauma.Items.Components return slotRestrictions[index].MatchesItem(itemPrefab); } + public bool ContainsItemsWithSameIdentifier(Item item) + { + if (item == null) { return false; } + foreach (var containedItem in Inventory.AllItems) + { + if (containedItem.Prefab.Identifier == item.Prefab.Identifier) + { + return true; + } + } + return false; + } + readonly List targets = new List(); public override void Update(float deltaTime, Camera cam) @@ -432,7 +446,7 @@ namespace Barotrauma.Items.Components } } } - var abilityItem = new AbilityItem(item); + var abilityItem = new AbilityItemContainer(item); character.CheckTalents(AbilityEffectType.OnOpenItemContainer, abilityItem); return base.Select(character); @@ -494,6 +508,21 @@ namespace Barotrauma.Items.Components IsActive = true; } + public override void ReceiveSignal(Signal signal, Connection connection) + { + switch (connection.Name) + { + case "activate": + case "use": + case "trigger_in": + if (signal.value != "0") + { + item.Use(1.0f, signal.sender); + } + break; + } + } + public void SetContainedItemPositions() { Vector2 transformedItemPos = ItemPos * item.Scale; @@ -689,7 +718,6 @@ namespace Barotrauma.Items.Components } } - protected override void ShallowRemoveComponentSpecific() { } @@ -743,4 +771,13 @@ namespace Barotrauma.Items.Components return componentElement; } } + + class AbilityItemContainer : AbilityObject, IAbilityItem + { + public AbilityItemContainer(Item item) + { + Item = item; + } + public Item Item { get; set; } + } } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Machines/Controller.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Machines/Controller.cs index 77323447c..8e4a78fab 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Machines/Controller.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Machines/Controller.cs @@ -370,18 +370,29 @@ namespace Barotrauma.Items.Components public Item GetFocusTarget() { - item.SendSignal(new Signal(MathHelper.ToDegrees(targetRotation).ToString("G", CultureInfo.InvariantCulture), sender: user), "position_out"); - - for (int i = item.LastSentSignalRecipients.Count - 1; i >= 0; i--) + Item focusTarget = null; + for (int c = 0; c < 2; c++) { - if (item.LastSentSignalRecipients[i].Item.Condition <= 0.0f || item.LastSentSignalRecipients[i].IsPower) { continue; } - if (item.LastSentSignalRecipients[i].Item.Prefab.FocusOnSelected) + //try finding the item to focus on using trigger_out, and if that fails, using position_out + string connectionName = c == 0 ? "trigger_out" : "position_out"; + string signal = c == 0 ? "0" : MathHelper.ToDegrees(targetRotation).ToString("G", CultureInfo.InvariantCulture); + if (!item.SendSignal(new Signal(signal, sender: user), connectionName) || focusTarget != null) { - return item.LastSentSignalRecipients[i].Item; + continue; + } + + for (int i = item.LastSentSignalRecipients.Count - 1; i >= 0; i--) + { + if (item.LastSentSignalRecipients[i].Item.Condition <= 0.0f || item.LastSentSignalRecipients[i].IsPower) { continue; } + if (item.LastSentSignalRecipients[i].Item.Prefab.FocusOnSelected) + { + focusTarget = item.LastSentSignalRecipients[i].Item; + break; + } } } - - return null; + + return focusTarget; } public override bool Pick(Character picker) diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Machines/Deconstructor.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Machines/Deconstructor.cs index 38420fcd6..b887cd743 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Machines/Deconstructor.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Machines/Deconstructor.cs @@ -170,7 +170,7 @@ namespace Barotrauma.Items.Components character.CheckTalents(AbilityEffectType.OnItemDeconstructedByAlly, abilityTargetItem); } - var itemCreationMultiplier = new AbilityValueItem(amountMultiplier, targetItem.Prefab); + var itemCreationMultiplier = new AbilityItemCreationMultiplier(targetItem.Prefab, amountMultiplier); user.CheckTalents(AbilityEffectType.OnItemDeconstructedMaterial, itemCreationMultiplier); amountMultiplier = (int)itemCreationMultiplier.Value; } @@ -261,8 +261,8 @@ namespace Barotrauma.Items.Components if (user != null && !user.Removed) { // used to spawn items directly into the deconstructor - var itemContainer = new AbilityItemPrefabItem(item, targetItem.Prefab); - user.CheckTalents(AbilityEffectType.OnItemDeconstructedInventory, itemContainer); + var itemDeconstructedInventory = new AbilityItemDeconstructedInventory(targetItem.Prefab, item); + user.CheckTalents(AbilityEffectType.OnItemDeconstructedInventory, itemDeconstructedInventory); } int amount = (int)amountMultiplier; @@ -333,7 +333,7 @@ namespace Barotrauma.Items.Components for (int i = 0; i < outputContainer.Capacity; i++) { var containedItem = outputContainer.Inventory.GetItemAt(i); - if (containedItem?.OwnInventory != null && containedItem.OwnInventory.TryPutItem(item, user: null)) + if (containedItem?.OwnInventory != null && containedItem.GetComponent() == null && containedItem.OwnInventory.TryPutItem(item, user: null)) { return; } @@ -454,4 +454,26 @@ namespace Barotrauma.Items.Components public Character Character { get; set; } } + class AbilityItemCreationMultiplier : AbilityObject, IAbilityValue, IAbilityItemPrefab + { + public AbilityItemCreationMultiplier(ItemPrefab itemPrefab, float itemAmountMultiplier) + { + ItemPrefab = itemPrefab; + Value = itemAmountMultiplier; + } + public ItemPrefab ItemPrefab { get; set; } + public float Value { get; set; } + } + + class AbilityItemDeconstructedInventory : AbilityObject, IAbilityItem, IAbilityItemPrefab + { + public AbilityItemDeconstructedInventory(ItemPrefab itemPrefab, Item item) + { + ItemPrefab = itemPrefab; + Item = item; + } + public ItemPrefab ItemPrefab { get; set; } + public Item Item { get; set; } + } + } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Machines/Fabricator.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Machines/Fabricator.cs index c29086343..6c3bf0ae7 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Machines/Fabricator.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Machines/Fabricator.cs @@ -179,8 +179,6 @@ namespace Barotrauma.Items.Components if (selectedItem == null) { return; } if (!outputContainer.Inventory.CanBePut(selectedItem.TargetItem, selectedItem.OutCondition * selectedItem.TargetItem.Health)) { return; } - RefreshAvailableIngredients(); - #if CLIENT itemList.Enabled = false; activateButton.Text = TextManager.Get("FabricatorCancel"); @@ -189,7 +187,13 @@ namespace Barotrauma.Items.Components IsActive = true; this.user = user; fabricatedItem = selectedItem; - MoveIngredientsToInputContainer(selectedItem); + RefreshAvailableIngredients(); + + bool isClient = GameMain.NetworkMember != null && GameMain.NetworkMember.IsClient; + if (!isClient) + { + MoveIngredientsToInputContainer(selectedItem); + } requiredTime = GetRequiredTime(fabricatedItem, user); timeUntilReady = requiredTime; @@ -230,21 +234,19 @@ namespace Barotrauma.Items.Components } if (fabricatedItem == null) { return; } - fabricatedItem = null; - -#if CLIENT +#if SERVER + if (user != null) + { + GameServer.Log(GameServer.CharacterLogName(user) + " cancelled the fabrication of " + fabricatedItem.DisplayName + " in " + item.Name, ServerLog.MessageType.ItemInteraction); + } +#elif CLIENT itemList.Enabled = true; if (activateButton != null) { activateButton.Text = TextManager.Get("FabricatorCreate"); } #endif -#if SERVER - if (user != null) - { - GameServer.Log(GameServer.CharacterLogName(user) + " cancelled the fabrication of " + fabricatedItem.DisplayName + " in " + item.Name, ServerLog.MessageType.ItemInteraction); - } -#endif + fabricatedItem = null; } public override void Update(float deltaTime, Camera cam) @@ -256,15 +258,20 @@ namespace Barotrauma.Items.Components } refreshIngredientsTimer -= deltaTime; - if (fabricatedItem == null || !CanBeFabricated(fabricatedItem, availableIngredients, user)) + bool isClient = GameMain.NetworkMember?.IsClient ?? false; + + if (!isClient) { - CancelFabricating(); - return; + if (fabricatedItem == null || !CanBeFabricated(fabricatedItem, availableIngredients, user)) + { + CancelFabricating(); + return; + } } progressState = fabricatedItem == null ? 0.0f : (requiredTime - timeUntilReady) / requiredTime; - if (GameMain.NetworkMember?.IsClient ?? false) + if (isClient) { hasPower = State != FabricatorState.Paused; if (!hasPower) @@ -365,28 +372,29 @@ namespace Barotrauma.Items.Components availableItems.Remove(availableItem); Entity.Spawner.AddToRemoveQueue(availableItem); inputContainer.Inventory.RemoveItem(availableItem); + break; } } }); int amountFittingContainer = outputContainer.Inventory.HowManyCanBePut(fabricatedItem.TargetItem, fabricatedItem.OutCondition * fabricatedItem.TargetItem.Health); - var fabricationValueItem = new AbilityValueItem(fabricatedItem.Amount, fabricatedItem.TargetItem); + var fabricationitemAmount = new AbilityFabricationItemAmount(fabricatedItem.TargetItem, fabricatedItem.Amount); int quality = 0; if (user?.Info != null) { foreach (Character character in Character.GetFriendlyCrew(user)) { - character.CheckTalents(AbilityEffectType.OnAllyItemFabricatedAmount, fabricationValueItem); + character.CheckTalents(AbilityEffectType.OnAllyItemFabricatedAmount, fabricationitemAmount); } - user.CheckTalents(AbilityEffectType.OnItemFabricatedAmount, fabricationValueItem); + user.CheckTalents(AbilityEffectType.OnItemFabricatedAmount, fabricationitemAmount); quality = GetFabricatedItemQuality(fabricatedItem, user); } var tempUser = user; - for (int i = 0; i < (int)fabricationValueItem.Value; i++) + for (int i = 0; i < (int)fabricationitemAmount.Value; i++) { float outCondition = fabricatedItem.OutCondition; if (i < amountFittingContainer) @@ -433,7 +441,7 @@ namespace Barotrauma.Items.Components { float userSkill = user.GetSkillLevel(skill.Identifier); float addedSkill = skill.Level * SkillSettings.Current.SkillIncreasePerFabricatorRequiredSkill / Math.Max(userSkill, 1.0f); - var addedSkillValue = new AbilityValueString(addedSkill, skill.Identifier); + var addedSkillValue = new AbilityFabricatorSkillGain(skill.Identifier, addedSkill); user.CheckTalents(AbilityEffectType.OnItemFabricationSkillGain, addedSkillValue); user.Info.IncreaseSkillLevel( @@ -542,6 +550,11 @@ namespace Barotrauma.Items.Components private void RefreshAvailableIngredients() { + Character user = this.user; +#if CLIENT + user ??= Character.Controlled; +#endif + List itemList = new List(); itemList.AddRange(inputContainer.Inventory.AllItems); foreach (MapEntity linkedTo in item.linkedTo) @@ -550,6 +563,10 @@ namespace Barotrauma.Items.Components { var itemContainer = linkedItem.GetComponent(); if (itemContainer == null) { continue; } + if (user != null) + { + if (!itemContainer.HasRequiredItems(user, addMessage: false)) { continue; } + } var deconstructor = linkedItem.GetComponent(); if (deconstructor != null) @@ -568,17 +585,10 @@ namespace Barotrauma.Items.Components itemList.AddRange(container.Inventory.AllItems); } } -#if CLIENT - if (Character.Controlled?.Inventory != null) - { - itemList.AddRange(Character.Controlled.Inventory.AllItems); - } -#else if (user?.Inventory != null) { itemList.AddRange(user.Inventory.AllItems); } -#endif availableIngredients.Clear(); foreach (Item item in itemList) { @@ -600,8 +610,6 @@ namespace Barotrauma.Items.Components //required ingredients that are already present in the input container List usedItems = new List(); - bool isClient = GameMain.NetworkMember != null && GameMain.NetworkMember.IsClient; - targetItem.RequiredItems.ForEach(requiredItem => { for (int i = 0; i < requiredItem.Amount; i++) { @@ -630,10 +638,11 @@ namespace Barotrauma.Items.Components if (!inputContainer.Inventory.CanBePut(availablePrefab)) { var unneededItem = inputContainer.Inventory.AllItems.FirstOrDefault(it => !usedItems.Contains(it)); - unneededItem?.Drop(null, createNetworkEvent: !isClient); + unneededItem?.Drop(null); } - inputContainer.Inventory.TryPutItem(availablePrefab, user: null, createNetworkEvent: !isClient); + inputContainer.Inventory.TryPutItem(availablePrefab, user: null); } + break; } } }); @@ -684,5 +693,26 @@ namespace Barotrauma.Items.Components } savedFabricatedItem = null; } + class AbilityFabricatorSkillGain : AbilityObject, IAbilityValue, IAbilitySkillIdentifier + { + public AbilityFabricatorSkillGain(string skillIdentifier, float skillAmount) + { + SkillIdentifier = skillIdentifier; + Value = skillAmount; + } + public float Value { get; set; } + public string SkillIdentifier { get; set; } + } + + class AbilityFabricationItemAmount : AbilityObject, IAbilityValue, IAbilityItemPrefab + { + public AbilityFabricationItemAmount(ItemPrefab itemPrefab, float itemAmount) + { + ItemPrefab = itemPrefab; + Value = itemAmount; + } + public float Value { get; set; } + public ItemPrefab ItemPrefab { get; set; } + } } } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Machines/Pump.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Machines/Pump.cs index 9317f68b9..e0a701b14 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Machines/Pump.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Machines/Pump.cs @@ -29,6 +29,15 @@ namespace Barotrauma.Items.Components } } + public float CurrentBrokenVolume + { + get + { + if (item.ConditionPercentage > 10.0f || !IsActive) { return 0.0f; } + return (1.0f - item.ConditionPercentage / 10.0f) * 100.0f; + } + } + private float pumpSpeedLockTimer, isActiveLockTimer; [Serialize(0.0f, true, description: "How fast the item is currently pumping water (-100 = full speed out, 100 = full speed in). Intended to be used by StatusEffect conditionals (setting this value in XML has no effect).")] @@ -72,6 +81,8 @@ namespace Barotrauma.Items.Components private const float TinkeringSpeedIncrease = 4.0f; + public override bool UpdateWhenInactive => true; + public Pump(Item item, XElement element) : base(item, element) { @@ -82,11 +93,15 @@ namespace Barotrauma.Items.Components public override void Update(float deltaTime, Camera cam) { + pumpSpeedLockTimer -= deltaTime; + isActiveLockTimer -= deltaTime; + + if (!IsActive) { return; } + currFlow = 0.0f; if (TargetLevel != null) { - pumpSpeedLockTimer -= deltaTime; float hullPercentage = 0.0f; if (item.CurrentHull != null) { hullPercentage = (item.CurrentHull.WaterVolume / item.CurrentHull.Volume) * 100.0f; } FlowPercentage = ((float)TargetLevel - hullPercentage) * 10.0f; diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Machines/Reactor.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Machines/Reactor.cs index 91d3d3b5f..02028708a 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Machines/Reactor.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Machines/Reactor.cs @@ -76,7 +76,7 @@ namespace Barotrauma.Items.Components { if (lastUser == value) { return; } lastUser = value; - degreeOfSuccess = lastUser == null ? 0.0f : DegreeOfSuccess(lastUser); + degreeOfSuccess = lastUser == null ? 0.0f : Math.Min(DegreeOfSuccess(lastUser), 1.0f); LastUserWasPlayer = lastUser.IsPlayer; } } @@ -601,7 +601,7 @@ namespace Barotrauma.Items.Components if (!shutDown) { - float degreeOfSuccess = DegreeOfSuccess(character); + float degreeOfSuccess = Math.Min(DegreeOfSuccess(character), 1.0f); float refuelLimit = 0.3f; //characters with insufficient skill levels don't refuel the reactor if (degreeOfSuccess > refuelLimit) diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Machines/Sonar.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Machines/Sonar.cs index c0a64ef76..cf63c3894 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Machines/Sonar.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Machines/Sonar.cs @@ -106,6 +106,13 @@ namespace Barotrauma.Items.Components set; } + [Editable, Serialize(false, false, description: "Should the sonar view be centered on the transducers or the submarine's center of mass. Only has an effect if UseTransducers is enabled.")] + public bool CenterOnTransducers + { + get; + set; + } + [Editable, Serialize(false, false, description: "Does the sonar have mineral scanning mode. " + "Only available in-game when the Item has no Steering component.")] public bool HasMineralScanner { get; set; } @@ -318,7 +325,7 @@ namespace Barotrauma.Items.Components Vector2 transducerPosSum = Vector2.Zero; foreach (ConnectedTransducer transducer in connectedTransducers) { - if (transducer.Transducer.Item.Submarine != null) + if (transducer.Transducer.Item.Submarine != null && CenterOnTransducers) { return transducer.Transducer.Item.Submarine.WorldPosition; } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Machines/Steering.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Machines/Steering.cs index 44e6461b3..0707d3e1f 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Machines/Steering.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Machines/Steering.cs @@ -311,7 +311,7 @@ namespace Barotrauma.Items.Components } // override autopilot pathing while the AI rams, and go full speed ahead - if (AIRamTimer > 0f) + if (AIRamTimer > 0f && controlledSub != null) { AIRamTimer -= deltaTime; TargetVelocity = GetSteeringVelocity(AITacticalTarget, 0f); diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Power/PowerContainer.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Power/PowerContainer.cs index 3c999c05c..9d7002ac2 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Power/PowerContainer.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Power/PowerContainer.cs @@ -1,7 +1,6 @@ using Barotrauma.Networking; using Microsoft.Xna.Framework; using System; -using System.Collections.Generic; using System.Globalization; using System.Xml.Linq; @@ -111,6 +110,17 @@ namespace Barotrauma.Items.Components } } + [Serialize(false, true, description: "If true, the recharge speed (and power consumption) of the device goes up exponentially as the recharge rate is increased.")] + public bool ExponentialRechargeSpeed { get; set; } + + private float efficiency; + [Editable(minValue: 0.0f, maxValue: 1.0f, decimals: 2), Serialize(0.95f, true, description: "The amount of power you can get out of a item relative to the amount of power that's put into it.")] + public float Efficiency + { + get { return efficiency; } + set { efficiency = MathHelper.Clamp(value, 0.0f, 1.0f); } + } + public float RechargeRatio => RechargeSpeed / MaxRechargeSpeed; public const float aiRechargeTargetRatio = 0.5f; @@ -170,7 +180,7 @@ namespace Barotrauma.Items.Components { ApplyStatusEffects(ActionType.OnActive, deltaTime, null); } - + if (charge >= capacity) { //rechargeVoltage = 0.0f; @@ -181,13 +191,17 @@ namespace Barotrauma.Items.Components { float missingCharge = capacity - charge; float targetRechargeSpeed = rechargeSpeed; + if (ExponentialRechargeSpeed) + { + targetRechargeSpeed = MathF.Pow(rechargeSpeed / maxRechargeSpeed, 2) * maxRechargeSpeed; + } if (missingCharge < 1.0f) { targetRechargeSpeed *= missingCharge; } currPowerConsumption = MathHelper.Lerp(currPowerConsumption, targetRechargeSpeed, 0.05f); - Charge += currPowerConsumption * Math.Min(Voltage, 1.0f) / 3600.0f; - } + Charge += currPowerConsumption * Math.Min(Voltage, 1.0f) / 3600.0f * efficiency; + } if (charge <= 0.0f) { diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Power/PowerTransfer.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Power/PowerTransfer.cs index 52c065e75..b69425e0e 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Power/PowerTransfer.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Power/PowerTransfer.cs @@ -10,6 +10,8 @@ namespace Barotrauma.Items.Components { public List PowerConnections { get; private set; } + private readonly HashSet signalConnections = new HashSet(); + private readonly Dictionary connectionDirty = new Dictionary(); //a list of connections a given connection is connected to, either directly or via other power transfer components @@ -121,6 +123,7 @@ namespace Barotrauma.Items.Components partial void InitProjectSpecific(XElement element); + private static readonly HashSet recipientsToRefresh = new HashSet(); public override void UpdateBroken(float deltaTime, Camera cam) { base.UpdateBroken(deltaTime, cam); @@ -132,7 +135,8 @@ namespace Barotrauma.Items.Components powerLoad = 0.0f; currPowerConsumption = 0.0f; SetAllConnectionsDirty(); - foreach (HashSet recipientList in connectedRecipients.Values.ToList()) + recipientsToRefresh.Clear(); + foreach (HashSet recipientList in connectedRecipients.Values) { foreach (Connection c in recipientList) { @@ -140,16 +144,26 @@ namespace Barotrauma.Items.Components var recipientPowerTransfer = c.Item.GetComponent(); if (recipientPowerTransfer != null) { - recipientPowerTransfer.SetAllConnectionsDirty(); - recipientPowerTransfer.RefreshConnections(); + recipientsToRefresh.Add(recipientPowerTransfer); } } } + foreach (PowerTransfer recipientPowerTransfer in recipientsToRefresh) + { + recipientPowerTransfer.SetAllConnectionsDirty(); + recipientPowerTransfer.RefreshConnections(); + } RefreshConnections(); isBroken = true; } } + + private int prevSentPowerValue; + private string powerSignal; + private int prevSentLoadValue; + private string loadSignal; + public override void Update(float deltaTime, Camera cam) { RefreshConnections(); @@ -172,6 +186,19 @@ namespace Barotrauma.Items.Components //if the item can't be fixed, don't allow it to break if (!item.Repairables.Any() || !CanBeOverloaded) { return; } + if (prevSentPowerValue != (int)-CurrPowerConsumption || powerSignal == null) + { + prevSentPowerValue = (int)Math.Round(-CurrPowerConsumption); + powerSignal = prevSentPowerValue.ToString(); + } + if (prevSentLoadValue != (int)powerLoad || loadSignal == null) + { + prevSentLoadValue = (int)Math.Round(powerLoad); + loadSignal = prevSentLoadValue.ToString(); + } + item.SendSignal(powerSignal, "power_value_out"); + item.SendSignal(loadSignal, "load_value_out"); + float maxOverVoltage = Math.Max(OverloadVoltage, 1.0f); Overload = -currPowerConsumption > Math.Max(powerLoad, 200.0f) * maxOverVoltage; if (Overload && (GameMain.NetworkMember == null || GameMain.NetworkMember.IsServer)) @@ -217,6 +244,7 @@ namespace Barotrauma.Items.Components return picker != null; } + private static readonly HashSet tempConnected = new HashSet(); protected void RefreshConnections() { var connections = item.Connections; @@ -229,15 +257,15 @@ namespace Barotrauma.Items.Components else if (!connectionDirty[c]) { continue; - } + } //find all connections that are connected to this one (directly or via another PowerTransfer) - HashSet connected = new HashSet(); + tempConnected.Clear(); if (item.Condition > 0.0f) { if (!connectedRecipients.ContainsKey(c)) { - connectedRecipients.Add(c, connected); + connectedRecipients.Add(c, tempConnected); } else { @@ -249,24 +277,22 @@ namespace Barotrauma.Items.Components } } - connected.Add(c); - GetConnected(c, connected); + tempConnected.Add(c); + GetConnected(c, tempConnected); } - connectedRecipients[c] = connected; + connectedRecipients[c] = tempConnected; //go through all the PowerTransfers that we're connected to and set their connections to match the ones we just calculated //(no need to go through the recursive GetConnected method again) - foreach (Connection recipient in connected) + foreach (Connection recipient in tempConnected) { + if (recipient == c) { continue; } var recipientPowerTransfer = recipient.Item.GetComponent(); - if (recipientPowerTransfer == null) continue; - + if (recipientPowerTransfer == null) { continue; } if (!connectedRecipients.ContainsKey(recipient)) { - connectedRecipients.Add(recipient, connected); + connectedRecipients.Add(recipient, tempConnected); } - - recipientPowerTransfer.connectedRecipients[recipient] = connected; recipientPowerTransfer.connectionDirty[recipient] = false; } } @@ -296,7 +322,7 @@ namespace Barotrauma.Items.Components public void SetAllConnectionsDirty() { - if (item.Connections == null) return; + if (item.Connections == null) { return; } foreach (Connection c in item.Connections) { connectionDirty[c] = true; @@ -321,6 +347,14 @@ namespace Barotrauma.Items.Components return; } + foreach (Connection c in connections) + { + if (c.Name.Length > 5 && c.Name.Substring(0, 6) == "signal") + { + signalConnections.Add(c); + } + } + if (!(this is RelayComponent)) { if (PowerConnections.Any(p => !p.IsOutput) && PowerConnections.Any(p => p.IsOutput)) @@ -356,29 +390,30 @@ namespace Barotrauma.Items.Components { if (item.Condition <= 0.0f || connection.IsPower) { return; } if (!connectedRecipients.ContainsKey(connection)) { return; } + if (!signalConnections.Contains(connection)) { return; } - if (connection.Name.Length > 5 && connection.Name.Substring(0, 6) == "signal") + foreach (Connection recipient in connectedRecipients[connection]) { - foreach (Connection recipient in connectedRecipients[connection]) + if (recipient.Item == item || recipient.Item == signal.source) { continue; } + + signal.source?.LastSentSignalRecipients.Add(recipient); + + foreach (ItemComponent ic in recipient.Item.Components) { - if (recipient.Item == item || recipient.Item == signal.source) { continue; } - - signal.source?.LastSentSignalRecipients.Add(recipient); - - foreach (ItemComponent ic in recipient.Item.Components) - { - //other junction boxes don't need to receive the signal in the pass-through signal connections - //because we relay it straight to the connected items without going through the whole chain of junction boxes - if (ic is PowerTransfer && !(ic is RelayComponent)) { continue; } - ic.ReceiveSignal(signal, recipient); - } + //other junction boxes don't need to receive the signal in the pass-through signal connections + //because we relay it straight to the connected items without going through the whole chain of junction boxes + if (ic is PowerTransfer && !(ic is RelayComponent)) { continue; } + ic.ReceiveSignal(signal, recipient); + } + if (recipient.Effects != null && signal.value != "0" && !string.IsNullOrEmpty(signal.value)) + { foreach (StatusEffect effect in recipient.Effects) { recipient.Item.ApplyStatusEffect(effect, ActionType.OnUse, 1.0f); } } - } + } } protected override void RemoveComponentSpecific() diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Power/Powered.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Power/Powered.cs index 1db23da24..a5292d49c 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Power/Powered.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Power/Powered.cs @@ -272,7 +272,7 @@ namespace Barotrauma.Items.Components powered.voltage = -pt1.CurrPowerConsumption / Math.Max(pt1.PowerLoad, 1.0f); continue; } - if (powered.powerConsumption <= 0.0f && !(powered is PowerContainer)) + if ((powered.powerConsumption <= 0.0f || (powered.Item.GetComponent() is Repairable repairable && repairable.IsTinkering && repairable.TinkeringPowersDevices)) && !(powered is PowerContainer)) { powered.voltage = 1.0f; continue; diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Projectile.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Projectile.cs index 9b1c13af8..aa31c365e 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Projectile.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Projectile.cs @@ -268,7 +268,8 @@ namespace Barotrauma.Items.Components IgnoredBodies = ignoredBodies; Vector2 projectilePos = weaponPos; //make sure there's no obstacles between the base of the weapon (or the shoulder of the character) and the end of the barrel - if (Submarine.PickBody(weaponPos, spawnPos, IgnoredBodies, Physics.CollisionWall | Physics.CollisionLevel | Physics.CollisionItemBlocking) == null) + if (Submarine.PickBody(weaponPos, spawnPos, IgnoredBodies, Physics.CollisionWall | Physics.CollisionLevel | Physics.CollisionItemBlocking, + customPredicate: (Fixture f) => { return !IgnoredBodies.Contains(f.Body); }) == null) { //no obstacles -> we can spawn the projectile at the barrel projectilePos = spawnPos; @@ -359,7 +360,7 @@ namespace Barotrauma.Items.Components item.body.FarseerBody.IsBullet = true; item.body.CollisionCategories = Physics.CollisionProjectile; - item.body.CollidesWith = Physics.CollisionCharacter | Physics.CollisionWall | Physics.CollisionLevel; + item.body.CollidesWith = Physics.CollisionCharacter | Physics.CollisionWall | Physics.CollisionLevel | Physics.CollisionItemBlocking; IsActive = true; diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Repairable.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Repairable.cs index 0952af1c7..2893f94f1 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Repairable.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Repairable.cs @@ -16,6 +16,9 @@ namespace Barotrauma.Items.Components private float deteriorationTimer; private float deteriorateAlwaysResetTimer; + private int prevSentConditionValue; + private string conditionSignal; + bool wasBroken; bool wasGoodCondition; @@ -113,6 +116,9 @@ namespace Barotrauma.Items.Components public float TinkeringStrength => tinkeringStrength; + private bool tinkeringPowersDevices; + public bool TinkeringPowersDevices => tinkeringPowersDevices; + public bool IsBelowRepairThreshold => item.ConditionPercentage <= RepairThreshold; public bool IsBelowRepairIconThreshold => item.ConditionPercentage <= RepairThreshold / 2; @@ -266,6 +272,7 @@ namespace Barotrauma.Items.Components if (action == FixActions.Tinker) { tinkeringStrength = 1f + CurrentFixer.GetStatValue(StatTypes.TinkeringStrength); + tinkeringPowersDevices = CurrentFixer.HasAbilityFlag(AbilityFlags.TinkeringPowersDevices); if (character.HasAbilityFlag(AbilityFlags.CanTinkerFabricatorsAndDeconstructors) && item.GetComponent() != null || item.GetComponent() != null) { @@ -346,7 +353,13 @@ namespace Barotrauma.Items.Components UpdateProjSpecific(deltaTime); IsTinkering = false; - item.SendSignal($"{(int) item.ConditionPercentage}", "condition_out"); + if (prevSentConditionValue != (int)item.ConditionPercentage || conditionSignal == null) + { + prevSentConditionValue = (int)item.ConditionPercentage; + conditionSignal = prevSentConditionValue.ToString(); + } + + item.SendSignal(conditionSignal, "condition_out"); if (CurrentFixer == null) { diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/AndComponent.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/AndComponent.cs index d54ec8b92..8cc329fce 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/AndComponent.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/AndComponent.cs @@ -12,6 +12,8 @@ namespace Barotrauma.Items.Components //the output is sent if both inputs have received a signal within the timeframe protected float timeFrame; + + protected readonly Character[] signalSender = new Character[2]; [InGameEditable(DecimalCount = 2), Serialize(0.0f, true, description: "The item sends the output if both inputs have received a non-zero signal within the timeframe. If set to 0, the inputs must receive a signal at the same time.", alwaysUseInstanceValues: true)] public float TimeFrame @@ -80,14 +82,14 @@ namespace Barotrauma.Items.Components bool sendOutput = true; for (int i = 0; i < timeSinceReceived.Length; i++) { - if (timeSinceReceived[i] > timeFrame) sendOutput = false; + if (timeSinceReceived[i] > timeFrame) { sendOutput = false; } timeSinceReceived[i] += deltaTime; } string signalOut = sendOutput ? output : falseOutput; - if (string.IsNullOrEmpty(signalOut)) return; + if (string.IsNullOrEmpty(signalOut)) { return; } - item.SendSignal(signalOut, "signal_out"); + item.SendSignal(new Signal(signalOut, sender: signalSender[0] ?? signalSender[1]), "signal_out"); } public override void ReceiveSignal(Signal signal, Connection connection) @@ -95,12 +97,14 @@ namespace Barotrauma.Items.Components switch (connection.Name) { case "signal_in1": - if (signal.value == "0") return; + if (signal.value == "0") { return; } timeSinceReceived[0] = 0.0f; + signalSender[0] = signal.sender; break; case "signal_in2": - if (signal.value == "0") return; + if (signal.value == "0") { return; } timeSinceReceived[1] = 0.0f; + signalSender[1] = signal.sender; break; case "set_output": output = signal.value; diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/ButtonTerminal.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/ButtonTerminal.cs index 88883ccca..a6b340070 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/ButtonTerminal.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/ButtonTerminal.cs @@ -19,7 +19,7 @@ namespace Barotrauma.Items.Components private HashSet ActivatingItemPrefabs { get; set; } = new HashSet(); - private bool AllowUsingButtons => ActivatingItemPrefabs.None() || Container.Inventory.AllItems.Any(i => i != null && ActivatingItemPrefabs.Any(p => p == i.Prefab)); + private bool AllowUsingButtons => ActivatingItemPrefabs.None() || (Container != null && Container.Inventory.AllItems.Any(i => i != null && ActivatingItemPrefabs.Any(p => p == i.Prefab))); public ButtonTerminal(Item item, XElement element) : base(item, element) { @@ -101,12 +101,12 @@ namespace Barotrauma.Items.Components partial void OnItemLoadedProjSpecific(); - private bool SendSignal(int signalIndex, bool isServerMessage = false) + private bool SendSignal(int signalIndex, Character sender, bool isServerMessage = false) { if (!isServerMessage && !AllowUsingButtons) { return false; } string signal = Signals[signalIndex]; string connectionName = $"signal_out{signalIndex + 1}"; - item.SendSignal(signal, connectionName); + item.SendSignal(new Signal(signal, sender: sender), connectionName); return true; } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/ConcatComponent.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/ConcatComponent.cs index 4870ffd67..afcf91f2d 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/ConcatComponent.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/ConcatComponent.cs @@ -17,6 +17,12 @@ namespace Barotrauma.Items.Components } } + [Editable, Serialize("", false)] + public string Separator + { + get; + set; + } public ConcatComponent(Item item, XElement element) : base(item, element) @@ -25,7 +31,15 @@ namespace Barotrauma.Items.Components protected override string Calculate(string signal1, string signal2) { - string output = signal1 + signal2; + string output; + if (string.IsNullOrEmpty(Separator)) + { + output = signal1 + signal2; + } + else + { + output = signal1 + Separator + signal2; + } return output.Length <= maxOutputLength ? output : output.Substring(0, MaxOutputLength); } } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/Connection.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/Connection.cs index 90db70255..5119cb9a7 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/Connection.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/Connection.cs @@ -25,7 +25,7 @@ namespace Barotrauma.Items.Components get { return wires; } } - private Item item; + private readonly Item item; public readonly bool IsOutput; @@ -142,7 +142,6 @@ namespace Barotrauma.Items.Components IsPower = Name == "power_in" || Name == "power" || Name == "power_out"; - Effects = new List(); wireId = new ushort[MaxWires]; @@ -164,6 +163,7 @@ namespace Barotrauma.Items.Components break; case "statuseffect": + Effects ??= new List(); Effects.Add(StatusEffect.Load(subElement, item.Name + ", connection " + Name)); break; } @@ -272,7 +272,7 @@ namespace Barotrauma.Items.Components ic.ReceiveSignal(signal, connection); } - if (signal.value != "0") + if (recipient.Effects != null && signal.value != "0" && !string.IsNullOrEmpty(signal.value)) { foreach (StatusEffect effect in recipient.Effects) { diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/ConnectionPanel.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/ConnectionPanel.cs index 79bc7f6a9..92103f633 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/ConnectionPanel.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/ConnectionPanel.cs @@ -24,7 +24,19 @@ namespace Barotrauma.Items.Components /// public bool AlwaysAllowRewiring { - get { return item.Submarine?.Info.Type == SubmarineType.BeaconStation; } + get + { + if (item.Submarine == null) { return true; } + switch (item.Submarine.Info.Type) + { + case SubmarineType.Wreck: + case SubmarineType.BeaconStation: + case SubmarineType.EnemySubmarine: + case SubmarineType.Ruin: + return true; + } + return false; + } } [Editable, Serialize(false, true, description: "Locked connection panels cannot be rewired in-game.", alwaysUseInstanceValues: true)] diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/CustomInterface.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/CustomInterface.cs index bc7f71527..9dc5b92af 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/CustomInterface.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/CustomInterface.cs @@ -301,7 +301,6 @@ namespace Barotrauma.Items.Components public override void Update(float deltaTime, Camera cam) { - UpdateProjSpecific(); foreach (CustomInterfaceElement ciElement in customInterfaceElementList) { if (!ciElement.ContinuousSignal) { continue; } @@ -318,8 +317,6 @@ namespace Barotrauma.Items.Components } } - partial void UpdateProjSpecific(); - public override XElement Save(XElement parentElement) { labels = customInterfaceElementList.Select(ci => ci.Label).ToArray(); diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/DelayComponent.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/DelayComponent.cs index 3249973db..b3bdf5f2c 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/DelayComponent.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/DelayComponent.cs @@ -1,5 +1,6 @@ using System; using System.Collections.Generic; +using System.Globalization; using System.Xml.Linq; using Microsoft.Xna.Framework; namespace Barotrauma.Items.Components @@ -24,7 +25,7 @@ namespace Barotrauma.Items.Components private int signalQueueSize; private int delayTicks; - private readonly Queue signalQueue; + private readonly Queue signalQueue = new Queue(); private DelayedSignal prevQueuedSignal; @@ -39,6 +40,7 @@ namespace Barotrauma.Items.Components delay = value; delayTicks = (int)(delay / Timing.Step); signalQueueSize = Math.Max(delayTicks, 1) * 2; + signalQueue.Clear(); } } @@ -59,7 +61,6 @@ namespace Barotrauma.Items.Components public DelayComponent(Item item, XElement element) : base (item, element) { - signalQueue = new Queue(); IsActive = true; } @@ -74,7 +75,7 @@ namespace Barotrauma.Items.Components { var signalOut = signalQueue.Peek(); signalOut.SendDuration -= 1; - item.SendSignal(new Signal(signalOut.Signal.value, strength: signalOut.Signal.strength), "signal_out"); + item.SendSignal(new Signal(signalOut.Signal.value, sender: signalOut.Signal.sender, strength: signalOut.Signal.strength), "signal_out"); if (signalOut.SendDuration <= 0) { signalQueue.Dequeue(); @@ -115,7 +116,7 @@ namespace Barotrauma.Items.Components signalQueue.Enqueue(prevQueuedSignal); break; case "set_delay": - if (float.TryParse(signal.value, out float newDelay)) + if (float.TryParse(signal.value, NumberStyles.Any, CultureInfo.InvariantCulture, out float newDelay)) { newDelay = MathHelper.Clamp(newDelay, 0, 60); if (signalQueue.Count > 0 && newDelay != Delay) diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/EqualsComponent.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/EqualsComponent.cs index 19175aaf3..4ffc063f7 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/EqualsComponent.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/EqualsComponent.cs @@ -12,6 +12,8 @@ namespace Barotrauma.Items.Components protected string[] receivedSignal; + private readonly Character[] signalSender = new Character[2]; + //the output is sent if both inputs have received a signal within the timeframe protected float timeFrame; @@ -90,9 +92,8 @@ namespace Barotrauma.Items.Components if (sendOutput) { string signalOut = receivedSignal[0] == receivedSignal[1] ? output : falseOutput; - if (string.IsNullOrEmpty(signalOut)) return; - - item.SendSignal(signalOut, "signal_out"); + if (string.IsNullOrEmpty(signalOut)) { return; } + item.SendSignal(new Signal(signalOut, sender: signalSender[0] ?? signalSender[1]), "signal_out"); } } @@ -103,10 +104,15 @@ namespace Barotrauma.Items.Components case "signal_in1": receivedSignal[0] = signal.value; timeSinceReceived[0] = 0.0f; + signalSender[0] = signal.sender; break; case "signal_in2": receivedSignal[1] = signal.value; timeSinceReceived[1] = 0.0f; + signalSender[1] = signal.sender; + break; + case "set_output": + output = signal.value; break; } } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/GreaterComponent.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/GreaterComponent.cs index fa8109691..0f15476c1 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/GreaterComponent.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/GreaterComponent.cs @@ -32,10 +32,22 @@ namespace Barotrauma.Items.Components } public override void ReceiveSignal(Signal signal, Connection connection) - { - base.ReceiveSignal(signal, connection); - float.TryParse(receivedSignal[0], NumberStyles.Float, CultureInfo.InvariantCulture, out val1); - float.TryParse(receivedSignal[1], NumberStyles.Float, CultureInfo.InvariantCulture, out val2); + { + //base.ReceiveSignal(signal, connection); + switch (connection.Name) + { + case "signal_in1": + float.TryParse(signal.value, NumberStyles.Float, CultureInfo.InvariantCulture, out val1); + timeSinceReceived[0] = 0.0f; + break; + case "signal_in2": + float.TryParse(signal.value, NumberStyles.Float, CultureInfo.InvariantCulture, out val2); + timeSinceReceived[1] = 0.0f; + break; + case "set_output": + output = signal.value; + break; + } } } } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/LightComponent.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/LightComponent.cs index 876e785e3..e74aaff0d 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/LightComponent.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/LightComponent.cs @@ -50,7 +50,7 @@ namespace Barotrauma.Items.Components set { rotation = value; - SetLightSourceTransform(); + SetLightSourceTransformProjSpecific(); } } @@ -256,7 +256,7 @@ namespace Barotrauma.Items.Components return; } - SetLightSourceTransform(); + SetLightSourceTransformProjSpecific(); PhysicsBody body = ParentBody ?? item.body; if (body != null && !body.Enabled) @@ -338,7 +338,11 @@ namespace Barotrauma.Items.Components partial void SetLightSourceState(bool enabled, float brightness); - partial void SetLightSourceTransform(); + public void SetLightSourceTransform() + { + SetLightSourceTransformProjSpecific(); + } + partial void SetLightSourceTransformProjSpecific(); } } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/MotionSensor.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/MotionSensor.cs index 14abecf89..3c4db92a5 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/MotionSensor.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/MotionSensor.cs @@ -74,6 +74,17 @@ namespace Barotrauma.Items.Components } } + public Vector2 TransformedDetectOffset + { + get + { + Vector2 transformedDetectOffset = detectOffset; + if (item.FlippedX) { transformedDetectOffset.X = -transformedDetectOffset.X; } + if (item.FlippedY) { transformedDetectOffset.Y = -transformedDetectOffset.Y; } + return transformedDetectOffset; + } + } + [Editable(MinValueFloat = 0.1f, MaxValueFloat = 100.0f, DecimalCount = 2), Serialize(0.1f, true, description: "How often the sensor checks if there's something moving near it. Higher values are better for performance.", alwaysUseInstanceValues: true)] public float UpdateInterval { @@ -184,15 +195,15 @@ namespace Barotrauma.Items.Components } } - Vector2 detectPos = item.WorldPosition + detectOffset; + Vector2 detectPos = item.WorldPosition + TransformedDetectOffset; Rectangle detectRect = new Rectangle((int)(detectPos.X - rangeX), (int)(detectPos.Y - rangeY), (int)(rangeX * 2), (int)(rangeY * 2)); float broadRangeX = Math.Max(rangeX * 2, 500); float broadRangeY = Math.Max(rangeY * 2, 500); - if (item.CurrentHull == null && item.Submarine != null && Level.Loaded != null && + if (item.CurrentHull == null && item.Submarine != null && (Target == TargetType.Wall || Target == TargetType.Any)) { - if (Math.Abs(item.Submarine.Velocity.X) > MinimumVelocity || Math.Abs(item.Submarine.Velocity.Y) > MinimumVelocity) + if (Level.Loaded != null && (Math.Abs(item.Submarine.Velocity.X) > MinimumVelocity || Math.Abs(item.Submarine.Velocity.Y) > MinimumVelocity)) { var cells = Level.Loaded.GetCells(item.WorldPosition, 1); foreach (var cell in cells) @@ -268,7 +279,7 @@ namespace Barotrauma.Items.Components foreach (Limb limb in c.AnimController.Limbs) { if (limb.IsSevered) { continue; } - if (limb.LinearVelocity.LengthSquared() <= MinimumVelocity * MinimumVelocity) { continue; } + if (limb.LinearVelocity.LengthSquared() < MinimumVelocity * MinimumVelocity) { continue; } if (MathUtils.CircleIntersectsRectangle(limb.WorldPosition, ConvertUnits.ToDisplayUnits(limb.body.GetMaxExtent()), detectRect)) { MotionDetected = true; @@ -276,23 +287,12 @@ namespace Barotrauma.Items.Components } } } - } + } } - public override void FlipX(bool relativeToSub) - { - detectOffset.X = -detectOffset.X; - } - public override void FlipY(bool relativeToSub) - { - detectOffset.Y = -detectOffset.Y; - } public override XElement Save(XElement parentElement) { Vector2 prevDetectOffset = detectOffset; - //undo flipping before saving - if (item.FlippedX) { detectOffset.X = -detectOffset.X; } - if (item.FlippedY) { detectOffset.Y = -detectOffset.Y; } XElement element = base.Save(parentElement); detectOffset = prevDetectOffset; return element; diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/OrComponent.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/OrComponent.cs index d0661dc9c..b5c242653 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/OrComponent.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/OrComponent.cs @@ -15,14 +15,14 @@ namespace Barotrauma.Items.Components bool sendOutput = false; for (int i = 0; i < timeSinceReceived.Length; i++) { - if (timeSinceReceived[i] <= timeFrame) sendOutput = true; + if (timeSinceReceived[i] <= timeFrame) { sendOutput = true; } timeSinceReceived[i] += deltaTime; } string signalOut = sendOutput ? output : falseOutput; - if (string.IsNullOrEmpty(signalOut)) return; + if (string.IsNullOrEmpty(signalOut)) { return; } - item.SendSignal(signalOut, "signal_out"); + item.SendSignal(new Signal(signalOut, sender: signalSender[0] ?? signalSender[1]), "signal_out"); } } } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/OxygenDetector.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/OxygenDetector.cs index 4724dd56c..9cc1020e7 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/OxygenDetector.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/OxygenDetector.cs @@ -4,6 +4,9 @@ namespace Barotrauma.Items.Components { class OxygenDetector : ItemComponent { + private int prevSentOxygenValue; + private string oxygenSignal; + public OxygenDetector(Item item, XElement element) : base (item, element) { @@ -12,9 +15,15 @@ namespace Barotrauma.Items.Components public override void Update(float deltaTime, Camera cam) { - if (item.CurrentHull == null) return; + if (item.CurrentHull == null) { return; } - item.SendSignal(((int)item.CurrentHull.OxygenPercentage).ToString(), "signal_out"); + if (prevSentOxygenValue != (int)item.CurrentHull.OxygenPercentage || oxygenSignal == null) + { + prevSentOxygenValue = (int)item.CurrentHull.OxygenPercentage; + oxygenSignal = prevSentOxygenValue.ToString(); + } + + item.SendSignal(oxygenSignal, "signal_out"); } } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/WaterDetector.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/WaterDetector.cs index 629d07c37..6d78cea05 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/WaterDetector.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/WaterDetector.cs @@ -9,6 +9,9 @@ namespace Barotrauma.Items.Components //how often the detector can switch from state to another const float StateSwitchInterval = 1.0f; + private int prevSentWaterPercentageValue; + private string waterPercentageSignal; + private bool isInWater; private float stateSwitchDelay; @@ -106,7 +109,12 @@ namespace Barotrauma.Items.Components { waterPercentage = MathHelper.Clamp((int)Math.Ceiling(item.CurrentHull.WaterPercentage), 0, 100); } - item.SendSignal(waterPercentage.ToString(), "water_%"); + if (prevSentWaterPercentageValue != waterPercentage || waterPercentageSignal == null) + { + prevSentWaterPercentageValue = waterPercentage; + waterPercentageSignal = prevSentWaterPercentageValue.ToString(); + } + item.SendSignal(waterPercentageSignal, "water_%"); } string highPressureOut = (item.CurrentHull == null || item.CurrentHull.LethalPressure > 5.0f) ? "1" : "0"; item.SendSignal(highPressureOut, "high_pressure"); diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/WifiComponent.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/WifiComponent.cs index dc5194e40..8f3b6cebb 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/WifiComponent.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/WifiComponent.cs @@ -24,6 +24,7 @@ namespace Barotrauma.Items.Components private readonly int[] channelMemory = new int[ChannelMemorySize]; + private Connection signalInConnection; private Connection signalOutConnection; [Serialize(CharacterTeamType.None, true, description: "WiFi components can only communicate with components that have the same Team ID.", alwaysUseInstanceValues: true)] @@ -98,6 +99,7 @@ namespace Barotrauma.Items.Components if (item.Connections != null) { signalOutConnection = item.Connections.Find(c => c.Name == "signal_out"); + signalInConnection = item.Connections.Find(c => c.Name == "signal_in"); } if (channelMemory.All(m => m == 0)) { @@ -207,6 +209,18 @@ namespace Barotrauma.Items.Components if (wifiComp.signalOutConnection != null) { + if (signal.source != null && wifiComp.signalInConnection != null) + { + if (signal.source.LastSentSignalRecipients.Contains(wifiComp.signalInConnection)) + { + //signal already passed through this wifi component -> stop here to prevent an infinite loop + continue; + } + else + { + signal.source.LastSentSignalRecipients.Add(wifiComp.signalInConnection); + } + } wifiComp.item.SendSignal(s, wifiComp.signalOutConnection); } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/Wire.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/Wire.cs index a3dae763f..ec7a0db91 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/Wire.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/Wire.cs @@ -503,13 +503,6 @@ namespace Barotrauma.Items.Components return true; } - public override void Move(Vector2 amount) - { -#if CLIENT - if (item.IsSelected) MoveNodes(amount); -#endif - } - public List GetNodes() { return new List(nodes); diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/XorComponent.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/XorComponent.cs index 134b53130..d608e046a 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/XorComponent.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Signal/XorComponent.cs @@ -15,14 +15,14 @@ namespace Barotrauma.Items.Components int sendOutput = 0; for (int i = 0; i < timeSinceReceived.Length; i++) { - if (timeSinceReceived[i] <= timeFrame) sendOutput += 1; + if (timeSinceReceived[i] <= timeFrame) { sendOutput += 1; } timeSinceReceived[i] += deltaTime; } string signalOut = sendOutput == 1 ? output : falseOutput; - if (string.IsNullOrEmpty(signalOut)) return; + if (string.IsNullOrEmpty(signalOut)) { return; } - item.SendSignal(signalOut, "signal_out"); + item.SendSignal(new Signal(signalOut, sender: signalSender[0] ?? signalSender[1]), "signal_out"); } } } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/TriggerComponent.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/TriggerComponent.cs index b7ff7d8bb..a748459c7 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/TriggerComponent.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/TriggerComponent.cs @@ -141,8 +141,7 @@ namespace Barotrauma.Items.Components public override void Update(float deltaTime, Camera cam) { - triggerers.RemoveWhere(t => t.Removed); - LevelTrigger.RemoveDistantTriggerers(PhysicsBody, triggerers, item.WorldPosition); + LevelTrigger.RemoveInActiveTriggerers(PhysicsBody, triggerers); if (triggerOnce) { diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Turret.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Turret.cs index fdaca5d18..f63c0dc9d 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Turret.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Components/Turret.cs @@ -333,6 +333,7 @@ namespace Barotrauma.Items.Components FindLightComponent(); if (loadedRotationLimits.HasValue) { RotationLimits = loadedRotationLimits.Value; } if (loadedBaseRotation.HasValue) { BaseRotation = loadedBaseRotation.Value; } + targetRotation = rotation; UpdateTransformedBarrelPos(); } @@ -1516,7 +1517,7 @@ namespace Barotrauma.Items.Components minRotation += MathHelper.TwoPi; maxRotation += MathHelper.TwoPi; } - rotation = (minRotation + maxRotation) / 2; + targetRotation = rotation = (minRotation + maxRotation) / 2; UpdateTransformedBarrelPos(); } @@ -1537,7 +1538,7 @@ namespace Barotrauma.Items.Components minRotation += MathHelper.TwoPi; maxRotation += MathHelper.TwoPi; } - rotation = (minRotation + maxRotation) / 2; + targetRotation = rotation = (minRotation + maxRotation) / 2; UpdateTransformedBarrelPos(); } @@ -1607,6 +1608,7 @@ namespace Barotrauma.Items.Components { base.OnItemLoaded(); FindLightComponent(); + targetRotation = rotation; if (!loadedBaseRotation.HasValue) { if (item.FlippedX) { FlipX(relativeToSub: false); } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Inventory.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Inventory.cs index dbfdcf3b7..fbfb7a2ce 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Inventory.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Inventory.cs @@ -479,8 +479,11 @@ namespace Barotrauma { if (i < 0 || i >= slots.Length) { - string errorMsg = "Inventory.TryPutItem failed: index was out of range(" + i + ").\n" + Environment.StackTrace.CleanupStackTrace(); + string errorMsg = $"Inventory.TryPutItem failed: index was out of range (item: {(item?.Name ?? "null")}, inventory: {(Owner?.ToString() ?? "null")}).\n" + Environment.StackTrace.CleanupStackTrace(); GameAnalyticsManager.AddErrorEventOnce("Inventory.TryPutItem:IndexOutOfRange", GameAnalyticsManager.ErrorSeverity.Error, errorMsg); +#if DEBUG + DebugConsole.ThrowError(errorMsg); +#endif return false; } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/Item.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/Item.cs index 868912104..872ae1adf 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/Item.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/Item.cs @@ -262,6 +262,7 @@ namespace Barotrauma if (Screen.Selected == GameMain.SubEditorScreen) { SetContainedItemPositions(); + GetComponent()?.SetLightSourceTransform(); } #endif } @@ -732,12 +733,12 @@ namespace Barotrauma "Disclaimer: It's possible or even likely that the views block each other, if they were not designed to be viewed together!")] public bool DisplaySideBySideWhenLinked { get; set; } - public IEnumerable Repairables + public List Repairables { get { return repairables; } } - public IEnumerable Components + public List Components { get { return components; } } @@ -782,7 +783,7 @@ namespace Barotrauma } private readonly List allPropertyObjects = new List(); - public IEnumerable AllPropertyObjects + public IReadOnlyList AllPropertyObjects { get { return allPropertyObjects; } } @@ -1079,7 +1080,7 @@ namespace Barotrauma allPropertyObjects.Add(component); components.Add(component); - if (component.IsActive || component.Parent != null || (component.IsActiveConditionals != null && component.IsActiveConditionals.Any())) + if (component.IsActive || component.UpdateWhenInactive || component.Parent != null || (component.IsActiveConditionals != null && component.IsActiveConditionals.Any())) { updateableComponents.Add(component); } @@ -1092,7 +1093,7 @@ namespace Barotrauma #endif //component doesn't need to be updated if it isn't active, doesn't have a parent that could activate it, //nor status effects, sounds or conditionals that would need to run - if (!isActive && + if (!isActive && !component.UpdateWhenInactive && !hasSounds && component.Parent == null && (component.IsActiveConditionals == null || !component.IsActiveConditionals.Any()) && @@ -1672,7 +1673,7 @@ namespace Barotrauma ic.WasUsed = false; ic.WasSecondaryUsed = false; - if (ic.IsActive) + if (ic.IsActive || ic.UpdateWhenInactive) { if (condition <= 0.0f) { @@ -1809,7 +1810,7 @@ namespace Barotrauma /// private void ApplyWaterForces() { - if (body.Mass <= 0.0f) + if (body.Mass <= 0.0f || body.Density <= 0.0f) { return; } @@ -2087,18 +2088,19 @@ namespace Barotrauma return controller != null; } - public void SendSignal(string signal, string connectionName) + public bool SendSignal(string signal, string connectionName) { - SendSignal(new Signal(signal), connectionName); + return SendSignal(new Signal(signal), connectionName); } - public void SendSignal(Signal signal, string connectionName) + public bool SendSignal(Signal signal, string connectionName) { - if (connections == null) { return; } - if (!connections.TryGetValue(connectionName, out Connection connection)) { return; } + if (connections == null) { return false; } + if (!connections.TryGetValue(connectionName, out Connection connection)) { return false; } signal.source ??= this; SendSignal(signal, connection); + return true; } private readonly HashSet<(Signal Signal, Connection Connection)> delayedSignals = new HashSet<(Signal Signal, Connection Connection)>(); @@ -2113,9 +2115,14 @@ namespace Barotrauma //if the signal has been passed through this item multiple times already, interrupt it to prevent infinite loops if (signal.stepsTaken > 5 && signal.source != null) { - if (signal.source.LastSentSignalRecipients.AtLeast(3, recipient => recipient == connection)) + int duplicateRecipients = 0; + foreach (var recipient in signal.source.LastSentSignalRecipients) { - return; + if (recipient == connection) + { + duplicateRecipients++; + if (duplicateRecipients > 2) { return; } + } } } @@ -2126,7 +2133,16 @@ namespace Barotrauma //if there's an equal signal waiting to be sent //to the same connection, don't add a new one signal.stepsTaken = 0; - if (!delayedSignals.Any(s => s.Connection == connection && s.Signal.source == signal.source && s.Signal.value == signal.value && s.Signal.sender == signal.sender)) + bool duplicateFound = false; + foreach (var s in delayedSignals) + { + if (s.Connection == connection && s.Signal.source == signal.source && s.Signal.value == signal.value && s.Signal.sender == signal.sender) + { + duplicateFound = true; + break; + } + } + if (!duplicateFound) { delayedSignals.Add((signal, connection)); CoroutineManager.StartCoroutine(DelaySignal(signal, connection)); @@ -2134,16 +2150,17 @@ namespace Barotrauma } else { - foreach (StatusEffect effect in connection.Effects) + if (connection.Effects != null && signal.value != "0" && !string.IsNullOrEmpty(signal.value)) { - if (condition <= 0.0f && effect.type != ActionType.OnBroken) { continue; } - if (signal.value != "0" && !string.IsNullOrEmpty(signal.value)) { ApplyStatusEffect(effect, ActionType.OnUse, (float)Timing.Step); } + foreach (StatusEffect effect in connection.Effects) + { + if (condition <= 0.0f && effect.type != ActionType.OnBroken) { continue; } + ApplyStatusEffect(effect, ActionType.OnUse, (float)Timing.Step); + } } - signal.source ??= this; connection.SendSignal(signal); } - } private IEnumerable DelaySignal(Signal signal, Connection connection) @@ -2464,8 +2481,6 @@ namespace Barotrauma } - - if (remove) { Spawner?.AddToRemoveQueue(this); } } @@ -2850,6 +2865,14 @@ namespace Barotrauma string name = element.Attribute("name").Value; string identifier = element.GetAttributeString("identifier", ""); + if (string.IsNullOrWhiteSpace(name) && string.IsNullOrWhiteSpace(identifier)) + { + string errorMessage = "Failed to load an item (both name and identifier were null):\n"+element.ToString(); + DebugConsole.ThrowError(errorMessage); + GameAnalyticsManager.AddErrorEventOnce("Item.Load:NameAndIdentifierNull", GameAnalyticsManager.ErrorSeverity.Error, errorMessage); + return null; + } + string pendingSwap = element.GetAttributeString("pendingswap", ""); ItemPrefab appliedSwap = null; ItemPrefab oldPrefab = null; @@ -3274,4 +3297,17 @@ namespace Barotrauma } } } + class AbilityApplyTreatment : AbilityObject, IAbilityCharacter, IAbilityItem + { + public Character Character { get; set; } + public Character User { get; set; } + public Item Item { get; set; } + + public AbilityApplyTreatment(Character user, Character target, Item item) + { + Character = target; + User = user; + Item = item; + } + } } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Items/ItemPrefab.cs b/Barotrauma/BarotraumaShared/SharedSource/Items/ItemPrefab.cs index dfec46927..c822cffe3 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Items/ItemPrefab.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Items/ItemPrefab.cs @@ -105,6 +105,10 @@ namespace Barotrauma RequiredSkills = new List(); RequiredTime = element.GetAttributeFloat("requiredtime", 1.0f); OutCondition = element.GetAttributeFloat("outcondition", 1.0f); + if (OutCondition > 1.0f) + { + DebugConsole.AddWarning($"Error in \"{itemPrefab.Name}\"'s fabrication recipe: out condition is above 100% ({OutCondition * 100})."); + } RequiredItems = new List(); RequiresRecipe = element.GetAttributeBool("requiresrecipe", false); Amount = element.GetAttributeInt("amount", 1); @@ -1256,13 +1260,18 @@ namespace Barotrauma public static ItemPrefab Find(string name, string identifier) { + if (string.IsNullOrEmpty(name) && string.IsNullOrEmpty(identifier)) + { + throw new ArgumentException("Both name and identifier cannot be null."); + } + ItemPrefab prefab; if (string.IsNullOrEmpty(identifier)) { //legacy support identifier = GenerateLegacyIdentifier(name); } - prefab = Find(p => p is ItemPrefab && p.Identifier==identifier) as ItemPrefab; + prefab = Find(p => p is ItemPrefab && p.Identifier == identifier) as ItemPrefab; //not found, see if we can find a prefab with a matching alias if (prefab == null && !string.IsNullOrEmpty(name)) @@ -1478,5 +1487,10 @@ namespace Barotrauma return newElement; } + + public override string ToString() + { + return $"{Name} (identifier: {Identifier})"; + } } } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Map/Creatures/BallastFloraBehavior.cs b/Barotrauma/BarotraumaShared/SharedSource/Map/Creatures/BallastFloraBehavior.cs index 710b21946..b4a905486 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Map/Creatures/BallastFloraBehavior.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Map/Creatures/BallastFloraBehavior.cs @@ -794,7 +794,7 @@ namespace Barotrauma.MapCreatures.Behavior if (parent != null) { - if (otherBranch.BlockedSides.IsBitSet(connectingSide)) + if (otherBranch.BlockedSides.HasFlag(connectingSide)) { branch.BlockedSides |= oppositeSide; continue; diff --git a/Barotrauma/BarotraumaShared/SharedSource/Map/Explosion.cs b/Barotrauma/BarotraumaShared/SharedSource/Map/Explosion.cs index e91c25f7b..1c0e18576 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Map/Explosion.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Map/Explosion.cs @@ -68,10 +68,9 @@ namespace Barotrauma force = element.GetAttributeFloat("force", 0.0f); - abilityExplosion = element.GetAttributeBool("abilityexplosion", false); applyToSelf = element.GetAttributeBool("applytoself", true); - bool showEffects = !abilityExplosion; + bool showEffects = !element.GetAttributeBool("abilityexplosion", false) && element.GetAttributeBool("showeffects", true); sparks = element.GetAttributeBool("sparks", showEffects); shockwave = element.GetAttributeBool("shockwave", showEffects); flames = element.GetAttributeBool("flames", showEffects); @@ -151,7 +150,7 @@ namespace Barotrauma if (!MathUtils.NearlyEqual(Attack.GetStructureDamage(1.0f), 0.0f) || !MathUtils.NearlyEqual(Attack.GetLevelWallDamage(1.0f), 0.0f)) { - RangedStructureDamage(worldPosition, displayRange, Attack.GetStructureDamage(1.0f), Attack.GetLevelWallDamage(1.0f), attacker, IgnoredSubmarines); + RangedStructureDamage(worldPosition, displayRange, Attack.GetStructureDamage(1.0f), Attack.GetLevelWallDamage(1.0f), attacker, IgnoredSubmarines, Attack.EmitStructureDamageParticles); } if (BallastFloraDamage > 0.0f) @@ -388,7 +387,7 @@ namespace Barotrauma { if (damages.TryGetValue(limb, out float damage)) { - c.TrySeverLimbJoints(limb, attack.SeverLimbsProbability * distFactor, damage, allowBeheading: true); + c.TrySeverLimbJoints(limb, attack.SeverLimbsProbability * distFactor, damage, allowBeheading: true, attacker: attacker); } } } @@ -396,13 +395,15 @@ namespace Barotrauma } } + private static readonly List damagedStructureList = new List(); + private static readonly Dictionary damagedStructures = new Dictionary(); /// /// Returns a dictionary where the keys are the structures that took damage and the values are the amount of damage taken /// - public static Dictionary RangedStructureDamage(Vector2 worldPosition, float worldRange, float damage, float levelWallDamage, Character attacker = null, IEnumerable ignoredSubmarines = null) + public static Dictionary RangedStructureDamage(Vector2 worldPosition, float worldRange, float damage, float levelWallDamage, Character attacker = null, IEnumerable ignoredSubmarines = null, bool emitWallDamageParticles = true) { - List structureList = new List(); float dist = 600.0f; + damagedStructureList.Clear(); foreach (MapEntity entity in MapEntity.mapEntityList) { if (!(entity is Structure structure)) { continue; } @@ -412,19 +413,19 @@ namespace Barotrauma !structure.IsPlatform && Vector2.Distance(structure.WorldPosition, worldPosition) < dist * 3.0f) { - structureList.Add(structure); + damagedStructureList.Add(structure); } } - Dictionary damagedStructures = new Dictionary(); - foreach (Structure structure in structureList) + damagedStructures.Clear(); + foreach (Structure structure in damagedStructureList) { for (int i = 0; i < structure.SectionCount; i++) { float distFactor = 1.0f - (Vector2.Distance(structure.SectionPosition(i, true), worldPosition) / worldRange); if (distFactor <= 0.0f) { continue; } - structure.AddDamage(i, damage * distFactor, attacker); + structure.AddDamage(i, damage * distFactor, attacker, emitParticles: emitWallDamageParticles); if (damagedStructures.ContainsKey(structure)) { diff --git a/Barotrauma/BarotraumaShared/SharedSource/Map/Hull.cs b/Barotrauma/BarotraumaShared/SharedSource/Map/Hull.cs index 6993379c2..033dae146 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Map/Hull.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Map/Hull.cs @@ -1233,7 +1233,7 @@ namespace Barotrauma } } - Rectangle subRect = Submarine.CalculateDimensions(); + Rectangle subRect = Submarine.Borders; Alignment roomPos; if (rect.Y - rect.Height / 2 > subRect.Y + subRect.Height * 0.66f) diff --git a/Barotrauma/BarotraumaShared/SharedSource/Map/Levels/Level.cs b/Barotrauma/BarotraumaShared/SharedSource/Map/Levels/Level.cs index 94b486cc2..2a888ef49 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Map/Levels/Level.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Map/Levels/Level.cs @@ -574,9 +574,9 @@ namespace Barotrauma siteCoordsX = new List((borders.Height / siteInterval.Y) * (borders.Width / siteInterval.Y)); siteCoordsY = new List((borders.Height / siteInterval.Y) * (borders.Width / siteInterval.Y)); int caveSiteInterval = 500; - for (int x = siteInterval.X / 2; x < borders.Width; x += siteInterval.X) + for (int x = siteInterval.X / 2; x < borders.Width - siteInterval.X / 2; x += siteInterval.X) { - for (int y = siteInterval.Y / 2; y < borders.Height; y += siteInterval.Y) + for (int y = siteInterval.Y / 2; y < borders.Height - siteInterval.Y / 2; y += siteInterval.Y) { int siteX = x + Rand.Range(-siteVariance.X, siteVariance.X, Rand.RandSync.Server); int siteY = y + Rand.Range(-siteVariance.Y, siteVariance.Y, Rand.RandSync.Server); @@ -613,8 +613,11 @@ namespace Barotrauma if (Rand.Range(0, 10, Rand.RandSync.Server) != 0) { continue; } } - siteCoordsX.Add(siteX); - siteCoordsY.Add(siteY); + if (!TooClose(siteX, siteY)) + { + siteCoordsX.Add(siteX); + siteCoordsY.Add(siteY); + } if (closeToCave) { @@ -625,24 +628,45 @@ namespace Barotrauma int caveSiteX = x2 + Rand.Int(caveSiteInterval / 2, Rand.RandSync.Server); int caveSiteY = y2 + Rand.Int(caveSiteInterval / 2, Rand.RandSync.Server); - bool tooClose = false; - for (int i = 0; i < siteCoordsX.Count; i++) + if (!TooClose(caveSiteX, caveSiteY)) { - if (MathUtils.DistanceSquared(caveSiteX, caveSiteY, siteCoordsX[i], siteCoordsY[i]) < 10.0f * 10.0f) - { - tooClose = true; - break; - } + siteCoordsX.Add(caveSiteX); + siteCoordsY.Add(caveSiteY); } - if (tooClose) { continue; } - siteCoordsX.Add(caveSiteX); - siteCoordsY.Add(caveSiteY); } } } } } + bool TooClose(double siteX, double siteY) + { + for (int i = 0; i < siteCoordsX.Count; i++) + { + if (MathUtils.DistanceSquared(siteCoordsX[i], siteCoordsY[i], siteX, siteY) < 10.0f * 10.0f) + { + return true; + } + } + return false; + } + + for (int i = 0; i < siteCoordsX.Count; i++) + { + Debug.Assert( + siteCoordsX[i] > 0 || siteCoordsY[i] > 0, + $"Potential error in level generation: a voronoi site was outside the bounds of the level ({siteCoordsX[i]}, {siteCoordsY[i]})"); + Debug.Assert( + siteCoordsX[i] < borders.Width || siteCoordsY[i] < borders.Height, + $"Potential error in level generation: a voronoi site was outside the bounds of the level ({siteCoordsX[i]}, {siteCoordsY[i]})"); + for (int j = i + 1; j < siteCoordsX.Count; j++) + { + Debug.Assert( + MathUtils.DistanceSquared(siteCoordsX[i], siteCoordsY[i], siteCoordsX[j], siteCoordsY[j]) > 1.0f, + "Potential error in level generation: two voronoi sites are extremely close to each other."); + } + } + EqualityCheckValues.Add(Rand.Int(int.MaxValue, Rand.RandSync.Server)); //---------------------------------------------------------------------------------- @@ -1011,7 +1035,7 @@ namespace Barotrauma foreach (InterestingPosition pos in PositionsOfInterest) { if (pos.PositionType != PositionType.MainPath && pos.PositionType != PositionType.SidePath) { continue; } - if (pos.Position.X < 5000 || pos.Position.X > Size.X - 5000) { continue; } + if (pos.Position.X < pathBorders.X + minMainPathWidth || pos.Position.X > pathBorders.Right - minMainPathWidth) { continue; } if (Math.Abs(pos.Position.X - startPosition.X) < minMainPathWidth * 2 || Math.Abs(pos.Position.X - endPosition.X) < minMainPathWidth * 2) { continue; } if (GetTooCloseCells(pos.Position.ToVector2(), minMainPathWidth * 0.7f).Count > 0) { continue; } iceChunkPositions.Add(pos.Position); @@ -2897,6 +2921,7 @@ namespace Barotrauma float? edgeLength = null, float maxResourceOverlap = 0.4f) { edgeLength ??= Vector2.Distance(location.Edge.Point1, location.Edge.Point2); + Vector2 edgeDir = (location.Edge.Point2 - location.Edge.Point1) / edgeLength.Value; var minResourceOverlap = -((edgeLength.Value - (resourceCount * resourcePrefab.Size.X)) / (resourceCount * resourcePrefab.Size.X)); minResourceOverlap = Math.Max(minResourceOverlap, 0.0f); var lerpAmounts = new float[resourceCount]; @@ -2912,7 +2937,7 @@ namespace Barotrauma placedResources = new List(); for (int i = 0; i < resourceCount; i++) { - Vector2 selectedPos = Vector2.Lerp(location.Edge.Point1, location.Edge.Point2, startOffset + lerpAmounts[i]); + Vector2 selectedPos = Vector2.Lerp(location.Edge.Point1 + edgeDir * resourcePrefab.Size.X / 2, location.Edge.Point2 - edgeDir * resourcePrefab.Size.X / 2, startOffset + lerpAmounts[i]); var item = new Item(resourcePrefab, selectedPos, submarine: null); Vector2 edgeNormal = location.Edge.GetNormal(location.Cell); float moveAmount = (item.body == null ? item.Rect.Height / 2 : ConvertUnits.ToDisplayUnits(item.body.GetMaxExtent() * 0.7f)); @@ -3627,10 +3652,23 @@ namespace Barotrauma Wrecks = new List(wreckCount); for (int i = 0; i < wreckCount; i++) { - ContentFile contentFile = wreckFiles[i]; - if (contentFile == null) { continue; } - string wreckName = System.IO.Path.GetFileNameWithoutExtension(contentFile.Path); - SpawnSubOnPath(wreckName, contentFile, SubmarineType.Wreck); + //how many times we'll try placing another sub before giving up + const int MaxSubsToTry = 2; + int attempts = 0; + while (wreckFiles.Any() && attempts < MaxSubsToTry) + { + ContentFile contentFile = wreckFiles.First(); + wreckFiles.RemoveAt(0); + if (contentFile == null) { continue; } + string wreckName = System.IO.Path.GetFileNameWithoutExtension(contentFile.Path); + if (SpawnSubOnPath(wreckName, contentFile, SubmarineType.Wreck) != null) + { + //placed successfully + break; + } + attempts++; + } + } totalSW.Stop(); Debug.WriteLine($"{Wrecks.Count} wrecks created in { totalSW.ElapsedMilliseconds} (ms)"); diff --git a/Barotrauma/BarotraumaShared/SharedSource/Map/Levels/LevelObjects/LevelTrigger.cs b/Barotrauma/BarotraumaShared/SharedSource/Map/Levels/LevelObjects/LevelTrigger.cs index 87d9e6887..c6b2c0fb7 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Map/Levels/LevelObjects/LevelTrigger.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Map/Levels/LevelObjects/LevelTrigger.cs @@ -433,6 +433,31 @@ namespace Barotrauma return false; } + /// + /// Are there any active contacts between the physics body and the target entity + /// + public static bool CheckContactsForEntity(PhysicsBody triggerBody, Entity separatingEntity) + { + foreach (Fixture fixture in triggerBody.FarseerBody.FixtureList) + { + ContactEdge contactEdge = fixture.Body.ContactList; + while (contactEdge != null) + { + if (contactEdge.Contact != null && + contactEdge.Contact.Enabled && + contactEdge.Contact.IsTouching) + { + if (contactEdge.Contact.FixtureA != fixture && contactEdge.Contact.FixtureB != fixture) + { + if (GetEntity(contactEdge.Contact.FixtureB) == separatingEntity || GetEntity(contactEdge.Contact.FixtureA) == separatingEntity) { return true; } + } + } + contactEdge = contactEdge.Next; + } + } + return false; + } + public static Entity GetEntity(Fixture fixture) { if (fixture.Body == null || fixture.Body.UserData == null) { return null; } @@ -472,9 +497,6 @@ namespace Barotrauma { if (ParentTrigger != null && !ParentTrigger.IsTriggered) { return; } - triggerers.RemoveWhere(t => t.Removed); - - RemoveDistantTriggerers(PhysicsBody, triggerers, WorldPosition); bool isNotClient = true; #if CLIENT @@ -583,15 +605,27 @@ namespace Barotrauma } } - public static void RemoveDistantTriggerers(PhysicsBody physicsBody, HashSet triggerers, Vector2 calculateDistanceTo) + private static readonly List triggerersToRemove = new List(); + public static void RemoveInActiveTriggerers(PhysicsBody physicsBody, HashSet triggerers) { - //failsafe to ensure triggerers get removed when they're far from the trigger if (physicsBody == null) { return; } - float maxExtent = Math.Max(ConvertUnits.ToDisplayUnits(physicsBody.GetMaxExtent() * 5), 5000.0f); - triggerers.RemoveWhere(t => + + triggerersToRemove.Clear(); + foreach (var triggerer in triggerers) { - return Vector2.Distance(t.WorldPosition, calculateDistanceTo) > maxExtent; - }); + if (triggerer.Removed) + { + triggerersToRemove.Add(triggerer); + } + else if (!CheckContactsForEntity(physicsBody, triggerer)) + { + triggerersToRemove.Add(triggerer); + } + } + foreach (var triggerer in triggerersToRemove) + { + triggerers.Remove(triggerer); + } } public static void ApplyStatusEffects(List statusEffects, Vector2 worldPosition, Entity triggerer, float deltaTime, List targets) @@ -650,7 +684,7 @@ namespace Barotrauma float structureDamage = attack.GetStructureDamage(deltaTime); if (structureDamage > 0.0f) { - Explosion.RangedStructureDamage(worldPosition, attack.DamageRange, structureDamage, levelWallDamage: 0.0f); + Explosion.RangedStructureDamage(worldPosition, attack.DamageRange, structureDamage, levelWallDamage: 0.0f, emitWallDamageParticles: attack.EmitStructureDamageParticles); } } } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Map/Map/Location.cs b/Barotrauma/BarotraumaShared/SharedSource/Map/Map/Location.cs index 7a8e2f397..b080d772b 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Map/Map/Location.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Map/Map/Location.cs @@ -1,4 +1,5 @@ -using Barotrauma.Extensions; +using Barotrauma.Abilities; +using Barotrauma.Extensions; using Microsoft.Xna.Framework; using System; using System.Collections.Generic; @@ -132,6 +133,7 @@ namespace Barotrauma #endregion private const float MechanicalMaxDiscountPercentage = 50.0f; + private const float HealMaxDiscountPercentage = 10.0f; private readonly List takenItems = new List(); public IEnumerable TakenItems @@ -908,6 +910,12 @@ namespace Barotrauma return (int) Math.Ceiling((1.0f - discount) * cost * MechanicalPriceMultiplier); } + public int GetAdjustedHealCost(int cost) + { + float discount = Reputation.Value / Reputation.MaxReputation * (HealMaxDiscountPercentage / 100.0f); + return (int) Math.Ceiling((1.0f - discount) * cost * PriceMultiplier); + } + /// If true, the store will be recreated if it already exists. public void CreateStore(bool force = false) { @@ -1110,7 +1118,7 @@ namespace Barotrauma Discovered = true; if (checkTalents) { - GameSession.GetSessionCrewCharacters().ForEach(c => c.CheckTalents(AbilityEffectType.OnLocationDiscovered, new Abilities.AbilityLocation(this))); + GameSession.GetSessionCrewCharacters().ForEach(c => c.CheckTalents(AbilityEffectType.OnLocationDiscovered, new AbilityLocation(this))); } } @@ -1263,5 +1271,15 @@ namespace Barotrauma { HireManager?.Remove(); } + + class AbilityLocation : AbilityObject, IAbilityLocation + { + public AbilityLocation(Location location) + { + Location = location; + } + + public Location Location { get; set; } + } } } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Map/MapEntity.cs b/Barotrauma/BarotraumaShared/SharedSource/Map/MapEntity.cs index c53c98b81..1683e5269 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Map/MapEntity.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Map/MapEntity.cs @@ -20,14 +20,14 @@ namespace Barotrauma protected List linkedToID; public List unresolvedLinkedToID; - + /// /// List of upgrades this item has /// protected readonly List Upgrades = new List(); - + public HashSet disallowedUpgrades = new HashSet(); - + [Editable, Serialize("", true)] public string DisallowedUpgrades { @@ -101,7 +101,7 @@ namespace Barotrauma return !DrawBelowWater; } } - + public virtual bool Linkable { get { return false; } @@ -231,6 +231,9 @@ namespace Barotrauma protected set; } = true; + [Serialize("", true, "Submarine editor layer")] + public string Layer { get; set; } + /// /// The index of the outpost module this entity originally spawned in (-1 if not an outpost item) /// @@ -242,7 +245,7 @@ namespace Barotrauma { get { return ""; } } - + public MapEntity(MapEntityPrefab prefab, Submarine submarine, ushort id) : base(submarine, id) { this.prefab = prefab; @@ -303,7 +306,7 @@ namespace Barotrauma { return GetUpgrade(identifier) != null; } - + public Upgrade GetUpgrade(string identifier) { return Upgrades.Find(upgrade => upgrade.Identifier == identifier); @@ -329,7 +332,7 @@ namespace Barotrauma } DebugConsole.Log($"Set (ID: {ID} {prefab.Name})'s \"{upgrade.Prefab.Name}\" upgrade to level {upgrade.Level}"); } - + /// /// Adds a new upgrade to the item /// @@ -435,7 +438,7 @@ namespace Barotrauma disconnectedFromClone.DisconnectedWires.Add(cloneWire); if (cloneWire.Item.body != null) { cloneWire.Item.body.Enabled = false; } cloneWire.IsActive = false; - continue; + continue; } var connectedItem = originalWire.Connections[n].Item; @@ -552,7 +555,7 @@ namespace Barotrauma } - //update gaps in random order, because otherwise in rooms with multiple gaps + //update gaps in random order, because otherwise in rooms with multiple gaps //the water/air will always tend to flow through the first gap in the list, //which may lead to weird behavior like water draining down only through //one gap in a room even if there are several @@ -725,11 +728,11 @@ namespace Barotrauma foreach (ushort i in e.linkedToID) { - if (FindEntityByID(i) is MapEntity linked) + if (FindEntityByID(i) is MapEntity linked) { - e.linkedTo.Add(linked); - } - else + e.linkedTo.Add(linked); + } + else { #if DEBUG DebugConsole.ThrowError($"Linking the entity \"{e.Name}\" to another entity failed. Could not find an entity with the ID \"{i}\"."); @@ -770,7 +773,7 @@ namespace Barotrauma /// /// Gets all linked entities of specific type. /// - private static void GetLinkedEntitiesRecursive(MapEntity mapEntity, HashSet linkedTargets, ref int depth, int? maxDepth = null, Func filter = null) + private static void GetLinkedEntitiesRecursive(MapEntity mapEntity, HashSet linkedTargets, ref int depth, int? maxDepth = null, Func filter = null) where T : MapEntity { if (depth > maxDepth) { return; } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Map/MapEntityPrefab.cs b/Barotrauma/BarotraumaShared/SharedSource/Map/MapEntityPrefab.cs index 93eedb775..dd0dcc2b0 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Map/MapEntityPrefab.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Map/MapEntityPrefab.cs @@ -338,6 +338,8 @@ namespace Barotrauma if (target == null) { return false; } if (target is StructurePrefab && AllowedLinks.Contains("structure")) { return true; } if (target is ItemPrefab && AllowedLinks.Contains("item")) { return true; } + if (target is LinkedSubmarinePrefab && Tags.Contains("dock")) { return true; } + if (this is LinkedSubmarinePrefab && target.Tags.Contains("dock")) { return true; } return AllowedLinks.Contains(target.Identifier) || target.AllowedLinks.Contains(identifier) || target.Tags.Any(t => AllowedLinks.Contains(t)) || Tags.Any(t => target.AllowedLinks.Contains(t)); } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Map/Structure.cs b/Barotrauma/BarotraumaShared/SharedSource/Map/Structure.cs index 9169f06e4..322b98b77 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Map/Structure.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Map/Structure.cs @@ -115,7 +115,7 @@ namespace Barotrauma private float? maxHealth; - [Serialize(100.0f, true)] + [Serialize(100.0f, true), Editable] public float MaxHealth { get => maxHealth ?? Prefab.Health; @@ -704,7 +704,7 @@ namespace Barotrauma if (BodyWidth > 0.0f) { rectSize.X = BodyWidth; } if (BodyHeight > 0.0f) { rectSize.Y = BodyHeight; } - Vector2 bodyPos = WorldPosition + BodyOffset; + Vector2 bodyPos = WorldPosition + BodyOffset * Scale; Vector2 transformedMousePos = MathUtils.RotatePointAroundTarget(position, bodyPos, BodyRotation); @@ -876,7 +876,7 @@ namespace Barotrauma return true; } - public void AddDamage(int sectionIndex, float damage, Character attacker = null) + public void AddDamage(int sectionIndex, float damage, Character attacker = null, bool emitParticles = true) { if (!Prefab.Body || Prefab.Platform || Indestructible) { return; } @@ -885,7 +885,7 @@ namespace Barotrauma var section = Sections[sectionIndex]; #if CLIENT - if (damage > 0) + if (damage > 0 && emitParticles) { float dmg = Math.Min(MaxHealth - section.damage, damage); float particleAmount = MathHelper.Lerp(0, 25, MathUtils.InverseLerp(0, 100, dmg * Rand.Range(0.75f, 1.25f))); @@ -1016,7 +1016,10 @@ namespace Barotrauma damageAmount = attack.GetStructureDamage(deltaTime); AddDamage(i, damageAmount, attacker); #if CLIENT - GameMain.ParticleManager.CreateParticle("dustcloud", SectionPosition(i), 0.0f, 0.0f); + if (attack.EmitStructureDamageParticles) + { + GameMain.ParticleManager.CreateParticle("dustcloud", SectionPosition(i), 0.0f, 0.0f); + } #endif } } @@ -1034,7 +1037,7 @@ namespace Barotrauma if (Submarine != null && damageAmount > 0 && attacker != null) { - var abilityAttackerSubmarine = new AbilityCharacterSubmarine(attacker, Submarine); + var abilityAttackerSubmarine = new AbilityAttackerSubmarine(attacker, Submarine); foreach (Character character in Character.CharacterList) { character.CheckTalents(AbilityEffectType.AfterSubmarineAttacked, abilityAttackerSubmarine); @@ -1529,6 +1532,7 @@ namespace Barotrauma public virtual void Reset() { SerializableProperties = SerializableProperty.DeserializeProperties(this, Prefab.ConfigElement); + MaxHealth = Prefab.Health; Sprite.ReloadXML(); SpriteDepth = Sprite.Depth; NoAITarget = Prefab.NoAITarget; @@ -1542,4 +1546,15 @@ namespace Barotrauma } } } + + class AbilityAttackerSubmarine : AbilityObject, IAbilityCharacter, IAbilitySubmarine + { + public AbilityAttackerSubmarine(Character character, Submarine submarine) + { + Character = character; + Submarine = submarine; + } + public Character Character { get; set; } + public Submarine Submarine { get; set; } + } } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Map/Submarine.cs b/Barotrauma/BarotraumaShared/SharedSource/Map/Submarine.cs index 9dad1fd8d..efec856ac 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Map/Submarine.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Map/Submarine.cs @@ -1535,7 +1535,7 @@ namespace Barotrauma element.Add(new XAttribute("tags", Info.Tags.ToString())); element.Add(new XAttribute("gameversion", GameMain.Version.ToString())); - Rectangle dimensions = CalculateDimensions(); + Rectangle dimensions = VisibleBorders; element.Add(new XAttribute("dimensions", XMLExtensions.Vector2ToString(dimensions.Size.ToVector2()))); var cargoContainers = GetCargoContainers(); element.Add(new XAttribute("cargocapacity", cargoContainers.Sum(c => c.container.Capacity))); @@ -1615,7 +1615,7 @@ namespace Barotrauma Info.CheckSubsLeftBehind(element); } - public bool SaveAs(string filePath, System.IO.MemoryStream previewImage = null) + public bool TrySaveAs(string filePath, System.IO.MemoryStream previewImage = null) { var newInfo = new SubmarineInfo(this) { @@ -1628,8 +1628,19 @@ namespace Barotrauma //remove reference to the preview image from the old info, so we don't dispose it (the new info still uses the texture) Info.PreviewImage = null; #endif - Info.Dispose(); Info = newInfo; - return newInfo.SaveAs(filePath, previewImage); + Info.Dispose(); + Info = newInfo; + + try + { + newInfo.SaveAs(filePath, previewImage); + } + catch (Exception e) + { + DebugConsole.ThrowError($"Saving submarine \"{filePath}\" failed!", e); + return false; + } + return true; } public static bool Unloading @@ -1643,9 +1654,8 @@ namespace Barotrauma Unloading = true; #if CLIENT - RemoveAllRoundSounds(); //Sound.OnGameEnd(); - - if (GameMain.LightManager != null) GameMain.LightManager.ClearLights(); + RemoveAllRoundSounds(); + GameMain.LightManager?.ClearLights(); #endif var _loaded = new List(loaded); diff --git a/Barotrauma/BarotraumaShared/SharedSource/Map/SubmarineBody.cs b/Barotrauma/BarotraumaShared/SharedSource/Map/SubmarineBody.cs index 913d9e2cf..499acf25d 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Map/SubmarineBody.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Map/SubmarineBody.cs @@ -115,6 +115,8 @@ namespace Barotrauma { this.submarine = sub; + Vector2 minExtents = Vector2.Zero, maxExtents = Vector2.Zero; + Vector2 visibleMinExtents = Vector2.Zero, visibleMaxExtents = Vector2.Zero; Body farseerBody = null; if (!Hull.hullList.Any(h => h.Submarine == sub)) { @@ -133,8 +135,6 @@ namespace Barotrauma } HullVertices = convexHull; - Vector2 minExtents = Vector2.Zero, maxExtents = Vector2.Zero; - Vector2 visibleMinExtents = Vector2.Zero, visibleMaxExtents = Vector2.Zero; farseerBody = GameMain.World.CreateBody(); farseerBody.UserData = this; @@ -142,25 +142,18 @@ namespace Barotrauma { if (mapEntity.Submarine != submarine || !(mapEntity is Structure wall)) { continue; } + bool hasCollider = wall.HasBody && !wall.IsPlatform && wall.StairDirection == Direction.None; Rectangle rect = wall.Rect; - visibleMinExtents.X = Math.Min(rect.X, visibleMinExtents.X); - visibleMinExtents.Y = Math.Min(rect.Y - rect.Height, visibleMinExtents.Y); - visibleMaxExtents.X = Math.Max(rect.Right, visibleMaxExtents.X); - visibleMaxExtents.Y = Math.Max(rect.Y, visibleMaxExtents.Y); - - if (!wall.HasBody || wall.IsPlatform || wall.StairDirection != Direction.None) { continue; } - - farseerBody.CreateRectangle( - ConvertUnits.ToSimUnits(wall.BodyWidth), - ConvertUnits.ToSimUnits(wall.BodyHeight), - 50.0f, - -wall.BodyRotation, - ConvertUnits.ToSimUnits(new Vector2(rect.X + rect.Width / 2, rect.Y - rect.Height / 2) + wall.BodyOffset)).UserData = wall; - - minExtents.X = Math.Min(visibleMinExtents.X, minExtents.X); - minExtents.Y = Math.Min(visibleMinExtents.Y, minExtents.Y); - maxExtents.X = Math.Max(visibleMaxExtents.X, maxExtents.X); - maxExtents.Y = Math.Max(visibleMaxExtents.Y, maxExtents.Y); + SetExtents(new Vector2(rect.X, rect.Y - rect.Height), new Vector2(rect.Right, rect.Y), hasCollider); + if (hasCollider) + { + farseerBody.CreateRectangle( + ConvertUnits.ToSimUnits(wall.BodyWidth), + ConvertUnits.ToSimUnits(wall.BodyHeight), + 50.0f, + -wall.BodyRotation, + ConvertUnits.ToSimUnits(new Vector2(rect.X + rect.Width / 2, rect.Y - rect.Height / 2) + wall.BodyOffset)).UserData = wall; + } } foreach (Hull hull in Hull.hullList) @@ -168,21 +161,13 @@ namespace Barotrauma if (hull.Submarine != submarine || hull.IdFreed) { continue; } Rectangle rect = hull.Rect; + SetExtents(new Vector2(rect.X, rect.Y - rect.Height), new Vector2(rect.Right, rect.Y), hasCollider: true); + farseerBody.CreateRectangle( ConvertUnits.ToSimUnits(rect.Width), ConvertUnits.ToSimUnits(rect.Height), 100.0f, ConvertUnits.ToSimUnits(new Vector2(rect.X + rect.Width / 2, rect.Y - rect.Height / 2))).UserData = hull; - - visibleMinExtents.X = Math.Min(rect.X, visibleMinExtents.X); - visibleMinExtents.Y = Math.Min(rect.Y - rect.Height, visibleMinExtents.Y); - visibleMaxExtents.X = Math.Max(rect.Right, visibleMaxExtents.X); - visibleMaxExtents.Y = Math.Max(rect.Y, visibleMaxExtents.Y); - - minExtents.X = Math.Min(visibleMinExtents.X, minExtents.X); - minExtents.Y = Math.Min(visibleMinExtents.Y, minExtents.Y); - maxExtents.X = Math.Max(visibleMaxExtents.X, maxExtents.X); - maxExtents.Y = Math.Max(visibleMaxExtents.Y, maxExtents.Y); } foreach (Item item in Item.ItemList) @@ -207,31 +192,21 @@ namespace Barotrauma if (width > 0.0f && height > 0.0f) { item.StaticFixtures.Add(farseerBody.CreateRectangle(simWidth, simHeight, 5.0f, simPos)); - - visibleMinExtents.X = Math.Min(item.Position.X - width / 2, visibleMinExtents.X); - visibleMinExtents.Y = Math.Min(item.Position.Y - height / 2, visibleMinExtents.Y); - visibleMaxExtents.X = Math.Max(item.Position.X + width / 2, visibleMaxExtents.X); - visibleMaxExtents.Y = Math.Max(item.Position.Y + height / 2, visibleMaxExtents.Y); + SetExtents(item.Position - new Vector2(width, height) / 2, item.Position + new Vector2(width, height) / 2, hasCollider: true); } else if (radius > 0.0f && width > 0.0f) { item.StaticFixtures.Add(farseerBody.CreateRectangle(simWidth, simRadius * 2, 5.0f, simPos)); item.StaticFixtures.Add(farseerBody.CreateCircle(simRadius, 5.0f, simPos - Vector2.UnitX * simWidth / 2)); item.StaticFixtures.Add(farseerBody.CreateCircle(simRadius, 5.0f, simPos + Vector2.UnitX * simWidth / 2)); - visibleMinExtents.X = Math.Min(item.Position.X - width / 2 - radius, visibleMinExtents.X); - visibleMinExtents.Y = Math.Min(item.Position.Y - radius, visibleMinExtents.Y); - visibleMaxExtents.X = Math.Max(item.Position.X + width / 2 + radius, visibleMaxExtents.X); - visibleMaxExtents.Y = Math.Max(item.Position.Y + radius, visibleMaxExtents.Y); + SetExtents(item.Position - new Vector2(width / 2 + radius, height / 2), item.Position + new Vector2(width / 2 + radius, height / 2), hasCollider: true); } else if (radius > 0.0f && height > 0.0f) { item.StaticFixtures.Add(farseerBody.CreateRectangle(simRadius * 2, height, 5.0f, simPos)); item.StaticFixtures.Add(farseerBody.CreateCircle(simRadius, 5.0f, simPos - Vector2.UnitY * simHeight / 2)); item.StaticFixtures.Add(farseerBody.CreateCircle(simRadius, 5.0f, simPos + Vector2.UnitX * simHeight / 2)); - visibleMinExtents.X = Math.Min(item.Position.X - radius, visibleMinExtents.X); - visibleMinExtents.Y = Math.Min(item.Position.Y - height / 2 - radius, visibleMinExtents.Y); - visibleMaxExtents.X = Math.Max(item.Position.X + radius, visibleMaxExtents.X); - visibleMaxExtents.Y = Math.Max(item.Position.Y + height / 2 + radius, visibleMaxExtents.Y); + SetExtents(item.Position - new Vector2(width / 2, height / 2 + radius), item.Position + new Vector2(width / 2, height / 2 + radius), hasCollider: true); } else if (radius > 0.0f) { @@ -240,12 +215,8 @@ namespace Barotrauma visibleMinExtents.Y = Math.Min(item.Position.Y - radius, visibleMinExtents.Y); visibleMaxExtents.X = Math.Max(item.Position.X + radius, visibleMaxExtents.X); visibleMaxExtents.Y = Math.Max(item.Position.Y + radius, visibleMaxExtents.Y); + SetExtents(item.Position - new Vector2(radius, radius), item.Position + new Vector2(radius, radius), hasCollider: true); } - item.StaticFixtures.ForEach(f => f.UserData = item); - minExtents.X = Math.Min(visibleMinExtents.X, minExtents.X); - minExtents.Y = Math.Min(visibleMinExtents.Y, minExtents.Y); - maxExtents.X = Math.Max(visibleMaxExtents.X, maxExtents.X); - maxExtents.Y = Math.Max(visibleMaxExtents.Y, maxExtents.Y); } Borders = new Rectangle((int)minExtents.X, (int)maxExtents.Y, (int)(maxExtents.X - minExtents.X), (int)(maxExtents.Y - minExtents.Y)); @@ -271,6 +242,21 @@ namespace Barotrauma farseerBody.UserData = submarine; Body = new PhysicsBody(farseerBody); + + void SetExtents(Vector2 min, Vector2 max, bool hasCollider) + { + visibleMinExtents.X = Math.Min(min.X, visibleMinExtents.X); + visibleMinExtents.Y = Math.Min(min.Y, visibleMinExtents.Y); + visibleMaxExtents.X = Math.Max(max.X, visibleMaxExtents.X); + visibleMaxExtents.Y = Math.Max(max.Y, visibleMaxExtents.Y); + if (hasCollider) + { + minExtents.X = Math.Min(min.X, minExtents.X); + minExtents.Y = Math.Min(min.Y, minExtents.Y); + maxExtents.X = Math.Max(max.X, maxExtents.X); + maxExtents.Y = Math.Max(max.Y, maxExtents.Y); + } + } } private List GenerateConvexHull() @@ -853,6 +839,8 @@ namespace Barotrauma Vector2 impulse = direction * impact * 0.5f; impulse = impulse.ClampLength(MaxCollisionImpact); + float impulseMagnitude = impulse.Length(); + if (!MathUtils.IsValid(impulse)) { string errorMsg = @@ -919,8 +907,9 @@ namespace Barotrauma foreach (Item item in Item.ItemList) { if (item.Submarine != submarine || item.CurrentHull == null || item.body == null || !item.body.Enabled) { continue; } + if (item.body.Mass > impulseMagnitude) { continue; } - item.body.ApplyLinearImpulse(item.body.Mass * impulse, 10.0f); + item.body.ApplyLinearImpulse(impulse, 10.0f); item.PositionUpdateInterval = 0.0f; } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Map/SubmarineInfo.cs b/Barotrauma/BarotraumaShared/SharedSource/Map/SubmarineInfo.cs index d8dc6665f..20689d456 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Map/SubmarineInfo.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Map/SubmarineInfo.cs @@ -521,7 +521,7 @@ namespace Barotrauma } //saving/loading ---------------------------------------------------- - public bool SaveAs(string filePath, System.IO.MemoryStream previewImage = null) + public void SaveAs(string filePath, System.IO.MemoryStream previewImage = null) { var newElement = new XElement( SubmarineElement.Name, @@ -543,18 +543,9 @@ namespace Barotrauma { doc.Root.Add(new XAttribute("previewimage", Convert.ToBase64String(previewImage.ToArray()))); } - try - { - SaveUtil.CompressStringToFile(filePath, doc.ToString()); - Md5Hash.RemoveFromCache(filePath); - } - catch (Exception e) - { - DebugConsole.ThrowError("Saving submarine \"" + filePath + "\" failed!", e); - return false; - } - return true; + SaveUtil.CompressStringToFile(filePath, doc.ToString()); + Md5Hash.RemoveFromCache(filePath); } public static void AddToSavedSubs(SubmarineInfo subInfo) diff --git a/Barotrauma/BarotraumaShared/SharedSource/Networking/ChatMessage.cs b/Barotrauma/BarotraumaShared/SharedSource/Networking/ChatMessage.cs index f6cfdd76e..4f74e2fb5 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Networking/ChatMessage.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Networking/ChatMessage.cs @@ -220,25 +220,28 @@ namespace Barotrauma.Networking case ChatMessageType.Order: if (receiver != null && !receiver.IsDead) { - var receiverItem = receiver.Inventory?.AllItems.FirstOrDefault(i => i.GetComponent() != null); - //character doesn't have a radio -> don't send - if (receiverItem == null || !receiver.HasEquippedItem(receiverItem)) { return spokenMsg; } - - var senderItem = sender.Inventory?.AllItems.FirstOrDefault(i => i.GetComponent() != null); - if (senderItem == null || !sender.HasEquippedItem(senderItem)) { return spokenMsg; } - - var receiverRadio = receiverItem.GetComponent(); - var senderRadio = senderItem.GetComponent(); - - if (!receiverRadio.CanReceive(senderRadio)) { return spokenMsg; } - - string msg = ApplyDistanceEffect(receiverItem, senderItem, message, senderRadio.Range); - if (sender.SpeechImpediment > 0.0f) + foreach (Item receiverItem in receiver.Inventory?.AllItems.Where(i => i.GetComponent()?.LinkToChat ?? false)) { - //speech impediment doesn't reduce the range when using a radio, but adds extra garbling - msg = ApplyDistanceEffect(msg, sender.SpeechImpediment / 100.0f); + if (!receiver.HasEquippedItem(receiverItem)) { continue; } + + foreach (Item senderItem in sender.Inventory?.AllItems.Where(i => i.GetComponent()?.LinkToChat ?? false)) + { + if (!sender.HasEquippedItem(senderItem)) { continue; } + + var receiverRadio = receiverItem.GetComponent(); + var senderRadio = senderItem.GetComponent(); + if (!receiverRadio.CanReceive(senderRadio)) { continue; } + + string msg = ApplyDistanceEffect(receiverItem, senderItem, message, senderRadio.Range); + if (sender.SpeechImpediment > 0.0f) + { + //speech impediment doesn't reduce the range when using a radio, but adds extra garbling + msg = ApplyDistanceEffect(msg, sender.SpeechImpediment / 100.0f); + } + return msg; + } } - return msg; + return spokenMsg; } break; } @@ -268,7 +271,7 @@ namespace Barotrauma.Networking foreach (Item item in sender.Inventory.AllItems) { var wifiComponent = item.GetComponent(); - if (wifiComponent == null || !wifiComponent.CanTransmit() || !sender.HasEquippedItem(item)) { continue; } + if (wifiComponent == null || !wifiComponent.LinkToChat || !wifiComponent.CanTransmit() || !sender.HasEquippedItem(item)) { continue; } if (radio == null || wifiComponent.Range > radio.Range) { radio = wifiComponent; diff --git a/Barotrauma/BarotraumaShared/SharedSource/Networking/INetSerializableStruct.cs b/Barotrauma/BarotraumaShared/SharedSource/Networking/INetSerializableStruct.cs new file mode 100644 index 000000000..a30e4476c --- /dev/null +++ b/Barotrauma/BarotraumaShared/SharedSource/Networking/INetSerializableStruct.cs @@ -0,0 +1,547 @@ +#nullable enable + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Linq; +using System.Reflection; +using Barotrauma.Networking; +using Microsoft.Xna.Framework; + +namespace Barotrauma +{ + /// + /// Marks fields and properties as to be serialized and deserialized by . + /// Also contains settings for some types like maximum and minimum values for numbers to reduce bits used. + /// + /// + /// + /// struct NetPurchasedItem : INetSerializableStruct + /// { + /// [NetworkSerialize] + /// public string Identifier; + /// + /// [NetworkSerialize(ArrayMaxSize = 16)] + /// public string[] Tags; + /// + /// [NetworkSerialize(MinValueInt = 0, MaxValueInt = 8)] + /// public int Amount; + /// } + /// + /// + /// + /// Using the attribute on the struct will make all fields and properties serialized + /// + [AttributeUsage(AttributeTargets.Field | AttributeTargets.Struct | AttributeTargets.Property)] + public class NetworkSerialize : Attribute + { + public int MaxValueInt = int.MaxValue; + public int MinValueInt = int.MinValue; + public float MaxValueFloat = float.MaxValue; + public float MinValueFloat = float.MinValue; + public int NumberOfBits = 8; + public bool IncludeColorAlpha = false; + public int ArrayMaxSize = ushort.MaxValue; + } + + /// + /// Static class that contains serialize and deserialize functions for different types used in + /// + public static class NetSerializableProperties + { + public readonly struct ReadWriteBehavior + { + public delegate dynamic? ReadDelegate(IReadMessage inc, Type type, NetworkSerialize attribute); + public delegate void WriteDelegate(dynamic? obj, NetworkSerialize attribute, IWriteMessage msg); + + public readonly ReadDelegate ReadAction; + public readonly WriteDelegate WriteAction; + + public ReadWriteBehavior(ReadDelegate readAction, WriteDelegate writeAction) + { + ReadAction = readAction; + WriteAction = writeAction; + } + } + + private static readonly ImmutableDictionary TypeBehaviors = new Dictionary + { + { typeof(Boolean), new ReadWriteBehavior(ReadBoolean, WriteDynamic) }, + { typeof(Byte), new ReadWriteBehavior(ReadByte, WriteDynamic) }, + { typeof(UInt16), new ReadWriteBehavior(ReadUInt16, WriteDynamic) }, + { typeof(Int16), new ReadWriteBehavior(ReadInt16, WriteDynamic) }, + { typeof(UInt32), new ReadWriteBehavior(ReadUInt32, WriteDynamic) }, + { typeof(Int32), new ReadWriteBehavior(ReadInt32, WriteInt32) }, + { typeof(UInt64), new ReadWriteBehavior(ReadUInt64, WriteDynamic) }, + { typeof(Int64), new ReadWriteBehavior(ReadInt64, WriteDynamic) }, + { typeof(Single), new ReadWriteBehavior(ReadSingle, WriteSingle) }, + { typeof(Double), new ReadWriteBehavior(ReadDouble, WriteDynamic) }, + { typeof(String), new ReadWriteBehavior(ReadString, WriteDynamic) }, + { typeof(Color), new ReadWriteBehavior(ReadColor, WriteColor) }, + { typeof(Vector2), new ReadWriteBehavior(ReadVector2, WriteVector2) } + }.ToImmutableDictionary(); + + private static readonly ReadWriteBehavior InvalidReadWriteBehavior = new ReadWriteBehavior(ReadInvalid, WriteInvalid); + + private static readonly ImmutableDictionary, ReadWriteBehavior> TypePredicates = new Dictionary, ReadWriteBehavior> + { + // Arrays + { type => type.BaseType?.IsAssignableFrom(typeof(Array)) ?? false, new ReadWriteBehavior(ReadArray, WriteArray) }, + + // Nested INetSerializableStructs + { type => typeof(INetSerializableStruct).IsAssignableFrom(type), new ReadWriteBehavior(ReadINetSerializableStruct, WriteINetSerializableStruct) }, + + // Enums + { type => type.IsEnum, new ReadWriteBehavior(ReadEnum, WriteEnum) }, + + // Nullable / Optional types + { type => Nullable.GetUnderlyingType(type) != null, new ReadWriteBehavior(ReadNullable, WriteNullable) } + }.ToImmutableDictionary(); + + private static void WriteInvalid(dynamic? obj, NetworkSerialize attribute, IWriteMessage msg) => throw new InvalidOperationException($"Type {obj?.GetType()} cannot be serialized. Did you forget to implement INetSerializableStruct?"); + + private static dynamic ReadInvalid(IReadMessage inc, Type type, NetworkSerialize attribute) => throw new InvalidOperationException($"Type {type} cannot be deserialized. Did you forget to implement INetSerializableStruct?"); + + private static void WriteNullable(dynamic? obj, NetworkSerialize attribute, IWriteMessage msg) + { + if (obj is { } notNull) + { + msg.Write(true); + + if (TryFindBehavior(notNull.GetType(), out ReadWriteBehavior behavior)) + { + // uh oh, something terrible has happened! + if (behavior.WriteAction == WriteNullable) { behavior = InvalidReadWriteBehavior; } + + behavior.WriteAction(notNull, attribute, msg); + return; + } + } + + msg.Write(false); + } + + private static dynamic? ReadNullable(IReadMessage inc, Type type, NetworkSerialize attribute) + { + if (!inc.ReadBoolean()) { return null; } + + Type? underlyingType = Nullable.GetUnderlyingType(type); + if (underlyingType is null) { throw new InvalidOperationException($"Could not get the underlying type of {type} in {nameof(ReadNullable)}"); } + + if (TryFindBehavior(underlyingType, out ReadWriteBehavior behavior)) + { + // uh oh, something terrible has happened! + if (behavior.ReadAction == ReadNullable) { behavior = InvalidReadWriteBehavior; } + + return behavior.ReadAction(inc, underlyingType, attribute); + } + + throw new InvalidOperationException($"Could not find suitable behavior for type {underlyingType} in {nameof(ReadNullable)}"); + } + + private static void WriteEnum(dynamic? obj, NetworkSerialize attribute, IWriteMessage msg) + { + if (obj is null) { throw new ArgumentNullException(nameof(obj), "Tried to write 'null' into a non-nullable type"); } + + Range range = GetEnumRange(obj.GetType()); + msg.WriteRangedInteger(Convert.ChangeType(obj, obj.GetTypeCode()), range.Start, range.End); + } + + private static dynamic ReadEnum(IReadMessage inc, Type type, NetworkSerialize attribute) + { + Range range = GetEnumRange(type); + int enumIndex = inc.ReadRangedInteger(range.Start, range.End); + + foreach (dynamic e in Enum.GetValues(type)) + { + if (Convert.ChangeType(e, e.GetTypeCode()) == enumIndex) { return e; } + } + + throw new InvalidOperationException($"An enum {type} with value {enumIndex} could not be found in {nameof(ReadEnum)}"); + } + + private static void WriteINetSerializableStruct(dynamic? obj, NetworkSerialize attribute, IWriteMessage msg) + { + if (obj is null) { throw new ArgumentNullException(nameof(obj), "Tried to write 'null' into a non-nullable type"); } + + if (!(obj is INetSerializableStruct serializableStruct)) { throw new InvalidOperationException($"Object in {nameof(WriteINetSerializableStruct)} was {obj.GetType()} but expected {nameof(INetSerializableStruct)}"); } + + serializableStruct.Write(msg); + } + + private static dynamic ReadINetSerializableStruct(IReadMessage inc, Type type, NetworkSerialize attribute) + { + return INetSerializableStruct.ReadDynamic(type, inc); + } + + private static void WriteDynamic(dynamic? obj, NetworkSerialize attribute, IWriteMessage msg) + { + if (obj is null) { throw new ArgumentNullException(nameof(obj), "Tried to write 'null' into a non-nullable type"); } + + msg.Write(obj); + } + + private static dynamic ReadArray(IReadMessage inc, Type type, NetworkSerialize attribute) + { + Type? elementType = type.GetElementType(); + if (elementType is null) { throw new InvalidOperationException($"Could not get the element type of {type} in {nameof(ReadArray)}"); } + + int length = inc.ReadRangedInteger(0, attribute.ArrayMaxSize); + + Array list = Array.CreateInstance(elementType, length); + + for (int i = 0; i < length; i++) + { + if (TryFindBehavior(elementType, out ReadWriteBehavior behavior)) + { + list.SetValue(behavior.ReadAction(inc, elementType, attribute), i); + } + else + { + throw new InvalidOperationException($"Could not find suitable behavior for type {elementType} in {nameof(ReadArray)}"); + } + } + + return list; + } + + private static void WriteArray(dynamic? obj, NetworkSerialize attribute, IWriteMessage msg) + { + if (obj is null) { throw new ArgumentNullException(nameof(obj), "Tried to write 'null' into a non-nullable type"); } + + if (!(obj is Array array)) { throw new InvalidOperationException($"Object in {nameof(WriteArray)} was {obj.GetType()} but expected {nameof(Array)}"); } + + msg.WriteRangedInteger(array.Length, 0, attribute.ArrayMaxSize); + + foreach (dynamic o in array) + { + if (TryFindBehavior(o.GetType(), out ReadWriteBehavior behavior)) + { + behavior.WriteAction(o, attribute, msg); + } + } + } + + private static dynamic ReadBoolean(IReadMessage inc, Type type, NetworkSerialize attribute) => inc.ReadBoolean(); + + private static dynamic ReadByte(IReadMessage inc, Type type, NetworkSerialize attribute) => inc.ReadByte(); + + private static dynamic ReadUInt16(IReadMessage inc, Type type, NetworkSerialize attribute) => inc.ReadUInt16(); + + private static dynamic ReadInt16(IReadMessage inc, Type type, NetworkSerialize attribute) => inc.ReadInt16(); + + private static dynamic ReadUInt32(IReadMessage inc, Type type, NetworkSerialize attribute) => inc.ReadUInt32(); + + private static dynamic ReadInt32(IReadMessage inc, Type type, NetworkSerialize attribute) + { + if (IsRanged(attribute.MinValueInt, attribute.MaxValueInt)) + { + return inc.ReadRangedInteger(attribute.MinValueInt, attribute.MaxValueInt); + } + + return inc.ReadInt32(); + } + + private static void WriteInt32(dynamic? obj, NetworkSerialize attribute, IWriteMessage msg) + { + if (obj is null) { throw new ArgumentNullException(nameof(obj), "Tried to write 'null' into a non-nullable type"); } + + if (IsRanged(attribute.MinValueInt, attribute.MaxValueInt)) + { + msg.WriteRangedInteger(obj, attribute.MinValueInt, attribute.MaxValueInt); + return; + } + + msg.Write(obj); + } + + private static dynamic ReadUInt64(IReadMessage inc, Type type, NetworkSerialize attribute) => inc.ReadUInt64(); + + private static dynamic ReadInt64(IReadMessage inc, Type type, NetworkSerialize attribute) => inc.ReadInt64(); + + private static dynamic ReadSingle(IReadMessage inc, Type type, NetworkSerialize attribute) + { + if (IsRanged(attribute.MinValueFloat, attribute.MaxValueFloat)) + { + return inc.ReadRangedSingle(attribute.MinValueFloat, attribute.MaxValueFloat, attribute.NumberOfBits); + } + + return inc.ReadSingle(); + } + + private static void WriteSingle(dynamic? obj, NetworkSerialize attribute, IWriteMessage msg) + { + if (obj is null) { throw new ArgumentNullException(nameof(obj), "Tried to write 'null' into a non-nullable type"); } + + if (IsRanged(attribute.MinValueFloat, attribute.MaxValueFloat)) + { + msg.WriteRangedSingle(obj, attribute.MinValueFloat, attribute.MaxValueFloat, attribute.NumberOfBits); + return; + } + + msg.Write(obj); + } + + private static dynamic ReadDouble(IReadMessage inc, Type type, NetworkSerialize attribute) => inc.ReadDouble(); + + private static dynamic ReadString(IReadMessage inc, Type type, NetworkSerialize attribute) => inc.ReadString(); + + private static dynamic ReadColor(IReadMessage inc, Type type, NetworkSerialize attribute) => attribute.IncludeColorAlpha ? inc.ReadColorR8G8B8A8() : inc.ReadColorR8G8B8(); + + private static void WriteColor(dynamic? obj, NetworkSerialize attribute, IWriteMessage msg) + { + if (obj is null) { throw new ArgumentNullException(nameof(obj), "Tried to write 'null' into a non-nullable type"); } + + if (attribute.IncludeColorAlpha) + { + msg.WriteColorR8G8B8A8(obj); + return; + } + + msg.WriteColorR8G8B8(obj); + } + + private static dynamic ReadVector2(IReadMessage inc, Type type, NetworkSerialize attribute) + { + float x; + float y; + + if (IsRanged(attribute.MinValueFloat, attribute.MaxValueFloat)) + { + x = inc.ReadRangedSingle(attribute.MinValueFloat, attribute.MaxValueFloat, attribute.NumberOfBits); + y = inc.ReadRangedSingle(attribute.MinValueFloat, attribute.MaxValueFloat, attribute.NumberOfBits); + } + else + { + x = inc.ReadSingle(); + y = inc.ReadSingle(); + } + + return new Vector2(x, y); + } + + private static void WriteVector2(dynamic? obj, NetworkSerialize attribute, IWriteMessage msg) + { + if (obj is null) { throw new ArgumentNullException(nameof(obj), "Tried to write 'null' into a non-nullable type"); } + + var (x, y) = (Vector2)obj; + if (IsRanged(attribute.MinValueFloat, attribute.MaxValueFloat)) + { + msg.WriteRangedSingle(x, attribute.MinValueFloat, attribute.MaxValueFloat, attribute.NumberOfBits); + msg.WriteRangedSingle(y, attribute.MinValueFloat, attribute.MaxValueFloat, attribute.NumberOfBits); + return; + } + + msg.Write(x); + msg.Write(y); + } + + private static bool IsRanged(float minValue, float maxValue) => minValue > float.MinValue || maxValue < float.MaxValue; + private static bool IsRanged(int minValue, int maxValue) => minValue > int.MinValue || maxValue < int.MaxValue; + + private static Range GetEnumRange(Type type) + { + ImmutableArray values = Enum.GetValues(type).Cast().ToImmutableArray(); + return new Range(values.Min(), values.Max()); + } + + public static bool TryFindBehavior(Type type, out ReadWriteBehavior behavior) + { + if (TypeBehaviors.TryGetValue(type, out behavior)) { return true; } + + foreach (var (predicate, behavior2) in TypePredicates) + { + if (predicate(type)) + { + behavior = behavior2; + return true; + } + } + + behavior = InvalidReadWriteBehavior; + return false; + } + } + + /// + /// Interface that allows the creation of automatically serializable and deserializable structs. + ///

+ ///
+ /// + /// + /// public enum PurchaseResult + /// { + /// Unknown, + /// Completed, + /// Declined + /// } + /// + /// [NetworkSerialize] + /// struct NetStoreTransaction : INetSerializableStruct + /// { + /// public long Timestamp { get; set; } + /// public PurchaseResult Result { get; set; } + /// public NetPurchasedItem? PurchasedItem { get; set; } + /// } + /// + /// [NetworkSerialize] + /// struct NetPurchasedItem : INetSerializableStruct + /// { + /// public string Identifier; + /// public string[] Tags; + /// public int Amount; + /// } + /// + /// + /// + /// Supported types are:
+ /// bool
+ /// byte
+ /// ushort
+ /// short
+ /// uint
+ /// int
+ /// ulong
+ /// long
+ /// float
+ /// double
+ /// string
+ ///
+ ///
+ /// In addition arrays, enums and are supported.
+ /// Using will make the field or property optional + ///
+ /// + public interface INetSerializableStruct + { + /// + /// Deserializes a network message into a struct. + /// + /// + /// + /// public void ClientRead(IReadMessage inc) + /// { + /// NetStoreTransaction transaction = INetSerializableStruct.Read<NetStoreTransaction>(inc); + /// if (transaction.Result == PurchaseResult.Declined) + /// { + /// Console.WriteLine("Purchase declined!"); + /// return; + /// } + /// + /// if (transaction.PurchasedItem is { } item) + /// { + /// // Purchased 3x Wrench with tags: smallitem, mechanical, tool + /// Console.WriteLine($"Purchased {item.Amount}x {item.Identifier} with tags: {string.Join(", ", item.Tags)}"); + /// } + /// } + /// + /// + /// Incoming network message + /// Type of the struct that implements + /// A new struct of type T with fields and properties deserialized + public static T Read(IReadMessage inc) where T : INetSerializableStruct => (T)ReadDynamic(typeof(T), inc); + + public static dynamic ReadDynamic(Type type, IReadMessage inc) + { + object? newObject = Activator.CreateInstance(type); + if (newObject is null) { return default!; } + + PropertyInfo[] properties = type.GetProperties(); + foreach (PropertyInfo info in properties) + { + NetworkSerialize? attribute = GetAttribute(info, newObject); + if (attribute is null) { continue; } + + if (NetSerializableProperties.TryFindBehavior(info.PropertyType, out var behavior)) + { + object? value = behavior.ReadAction(inc, info.PropertyType, attribute); + info.SetValue(newObject, value); + } + else + { + DebugConsole.ThrowError($"Unsupported property type \"{info.PropertyType}\" in {newObject}!"); + } + } + + FieldInfo[] fields = type.GetFields(); + foreach (FieldInfo info in fields) + { + NetworkSerialize? attribute = GetAttribute(info, newObject); + if (attribute is null) { continue; } + + if (NetSerializableProperties.TryFindBehavior(info.FieldType, out var behavior)) + { + object? value = behavior.ReadAction(inc, info.FieldType, attribute); + info.SetValue(newObject, value); + } + else + { + DebugConsole.ThrowError($"Unsupported field type \"{info.FieldType}\" in {newObject}!"); + } + } + + return newObject; + } + + /// + /// Serializes the struct into a network message + /// + /// + /// public void ServerWrite(IWriteMessage msg) + /// { + /// INetSerializableStruct transaction = new NetStoreTransaction + /// { + /// Result = PurchaseResult.Completed, + /// Timestamp = DateTimeOffset.Now.ToUnixTimeSeconds(), + /// PurchasedItem = new NetPurchasedItem + /// { + /// Identifier = "Wrench", + /// Amount = 3, + /// Tags = new []{ "smallitem", "mechanical", "tool" } + /// } + /// }; + /// + /// transaction.Write(msg); + /// } + /// + /// + /// + /// Outgoing network message + public void Write(IWriteMessage msg) + { + PropertyInfo[] properties = GetType().GetProperties(); + foreach (PropertyInfo info in properties) + { + NetworkSerialize? attribute = GetAttribute(info, this); + if (attribute is null) { continue; } + + if (NetSerializableProperties.TryFindBehavior(info.PropertyType, out var behavior)) + { + behavior.WriteAction(info.GetValue(this), attribute, msg); + } + else + { + throw new InvalidOperationException($"Unsupported property type \"{info.PropertyType}\" in {this}"); + } + } + + FieldInfo[] fields = GetType().GetFields(); + foreach (FieldInfo info in fields) + { + NetworkSerialize? attribute = GetAttribute(info, this); + if (attribute is null) { continue; } + + if (NetSerializableProperties.TryFindBehavior(info.FieldType, out var behavior)) + { + behavior.WriteAction(info.GetValue(this), attribute, msg); + } + else + { + throw new InvalidOperationException($"Unsupported field type \"{info.FieldType}\" in {this}"); + } + } + } + + private static NetworkSerialize? GetAttribute(MemberInfo info, object baseClass) => info.GetCustomAttribute() ?? baseClass.GetType().GetCustomAttribute(); + } +} \ No newline at end of file diff --git a/Barotrauma/BarotraumaShared/SharedSource/Networking/NetworkMember.cs b/Barotrauma/BarotraumaShared/SharedSource/Networking/NetworkMember.cs index 4894b2a32..032971460 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Networking/NetworkMember.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Networking/NetworkMember.cs @@ -29,7 +29,8 @@ namespace Barotrauma.Networking REQUEST_STARTGAMEFINALIZE, //tell the server you're ready to finalize round initialization ERROR, //tell the server that an error occurred - CREW, + CREW, //hiring UI + MEDICAL, //medical clinic READY_CHECK, READY_TO_SPAWN @@ -80,7 +81,8 @@ namespace Barotrauma.Networking MISSION, EVENTACTION, CREW, //anything related to managing bots in multiplayer - READY_CHECK //start, end and update a ready check + MEDICAL, //medical clinic + READY_CHECK //start, end and update a ready check } enum ServerNetObject { @@ -144,7 +146,9 @@ namespace Barotrauma.Networking NotOnWhitelist, ExcessiveDesyncOldEvent, ExcessiveDesyncRemovedEvent, - SyncTimeout + SyncTimeout, + SteamP2PError, + SteamP2PTimeOut, } abstract partial class NetworkMember diff --git a/Barotrauma/BarotraumaShared/SharedSource/Networking/OrderChatMessage.cs b/Barotrauma/BarotraumaShared/SharedSource/Networking/OrderChatMessage.cs index dc79afcd9..81170bc0c 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Networking/OrderChatMessage.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Networking/OrderChatMessage.cs @@ -23,18 +23,22 @@ namespace Barotrauma.Networking ///
public int? WallSectionIndex { get; set; } + public bool IsNewOrder { get; } + /// - /// Same as calling , but the text parameter is set using + /// Same as calling , + /// but the text parameter is set using /// - public OrderChatMessage(Order order, string orderOption, int priority, ISpatialEntity targetEntity, Character targetCharacter, Character sender) + public OrderChatMessage(Order order, string orderOption, int priority, ISpatialEntity targetEntity, Character targetCharacter, Character sender, bool isNewOrder = true) : this(order, orderOption, priority, - order?.GetChatMessage(targetCharacter?.Name, sender?.CurrentHull?.DisplayName, givingOrderToSelf: targetCharacter == sender, orderOption: orderOption, priority: priority), - targetEntity, targetCharacter, sender) + order?.GetChatMessage(targetCharacter?.Name, sender?.CurrentHull?.DisplayName, targetCharacter == sender, orderOption, isNewOrder), + targetEntity, targetCharacter, sender, isNewOrder) { } - public OrderChatMessage(Order order, string orderOption, int priority, string text, ISpatialEntity targetEntity, Character targetCharacter, Character sender) + public OrderChatMessage(Order order, string orderOption, int priority, string text, ISpatialEntity targetEntity, + Character targetCharacter, Character sender, bool isNewOrder = true) : base(sender?.Name, text, ChatMessageType.Order, sender, GameMain.NetworkMember.ConnectedClients.Find(c => c.Character == sender)) { Order = order; @@ -42,9 +46,11 @@ namespace Barotrauma.Networking OrderPriority = priority; TargetCharacter = targetCharacter; TargetEntity = targetEntity; + IsNewOrder = isNewOrder; } - public static void WriteOrder(IWriteMessage msg, Order order, Character targetCharacter, ISpatialEntity targetEntity, string orderOption, int orderPriority, int? wallSectionIndex) + public static void WriteOrder(IWriteMessage msg, Order order, Character targetCharacter, ISpatialEntity targetEntity, + string orderOption, int orderPriority, int? wallSectionIndex, bool isNewOrder) { msg.Write((byte)Order.PrefabList.IndexOf(order.Prefab)); msg.Write(targetCharacter == null ? (UInt16)0 : targetCharacter.ID); @@ -100,11 +106,13 @@ namespace Barotrauma.Networking msg.Write((byte)(wallSectionIndex ?? order.WallSectionIndex ?? 0)); } } + + msg.Write(isNewOrder); } private void WriteOrder(IWriteMessage msg) { - WriteOrder(msg, Order, TargetCharacter, TargetEntity, OrderOption, OrderPriority, WallSectionIndex); + WriteOrder(msg, Order, TargetCharacter, TargetEntity, OrderOption, OrderPriority, WallSectionIndex, IsNewOrder); } public struct OrderMessageInfo @@ -119,8 +127,10 @@ namespace Barotrauma.Networking public OrderTarget TargetPosition { get; } public int? WallSectionIndex { get; } public int Priority { get; } + public bool IsNewOrder { get; } - public OrderMessageInfo(int orderIndex, Order orderPrefab, string orderOption, int? orderOptionIndex, Character targetCharacter, Order.OrderTargetType targetType, Entity targetEntity, OrderTarget targetPosition, int? wallSectionIndex, int orderPriority) + public OrderMessageInfo(int orderIndex, Order orderPrefab, string orderOption, int? orderOptionIndex, Character targetCharacter, + Order.OrderTargetType targetType, Entity targetEntity, OrderTarget targetPosition, int? wallSectionIndex, int orderPriority, bool isNewOrder) { OrderIndex = orderIndex; OrderPrefab = orderPrefab; @@ -132,6 +142,7 @@ namespace Barotrauma.Networking TargetPosition = targetPosition; WallSectionIndex = wallSectionIndex; Priority = orderPriority; + IsNewOrder = isNewOrder; } } @@ -205,7 +216,10 @@ namespace Barotrauma.Networking wallSectionIndex = msg.ReadByte(); } - return new OrderMessageInfo(orderIndex, orderPrefab, orderOption, optionIndex, targetCharacter, orderTargetType, targetEntity, orderTargetPosition, wallSectionIndex, orderPriority); + bool isNewOrder = msg.ReadBoolean(); + + return new OrderMessageInfo(orderIndex, orderPrefab, orderOption, optionIndex, targetCharacter, + orderTargetType, targetEntity, orderTargetPosition, wallSectionIndex, orderPriority, isNewOrder); } } } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Networking/Primitives/Enums.cs b/Barotrauma/BarotraumaShared/SharedSource/Networking/Primitives/Enums.cs index e3ccaab6c..8f8e62d55 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Networking/Primitives/Enums.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Networking/Primitives/Enums.cs @@ -38,19 +38,19 @@ namespace Barotrauma.Networking public static class NetworkEnumExtensions { public static bool IsCompressed(this PacketHeader h) - => h.IsBitSet(PacketHeader.IsCompressed); + => h.HasFlag(PacketHeader.IsCompressed); public static bool IsConnectionInitializationStep(this PacketHeader h) - => h.IsBitSet(PacketHeader.IsConnectionInitializationStep); + => h.HasFlag(PacketHeader.IsConnectionInitializationStep); public static bool IsDisconnectMessage(this PacketHeader h) - => h.IsBitSet(PacketHeader.IsDisconnectMessage); + => h.HasFlag(PacketHeader.IsDisconnectMessage); public static bool IsServerMessage(this PacketHeader h) - => h.IsBitSet(PacketHeader.IsServerMessage); + => h.HasFlag(PacketHeader.IsServerMessage); public static bool IsHeartbeatMessage(this PacketHeader h) - => h.IsBitSet(PacketHeader.IsHeartbeatMessage); + => h.HasFlag(PacketHeader.IsHeartbeatMessage); } } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Networking/ServerLog.cs b/Barotrauma/BarotraumaShared/SharedSource/Networking/ServerLog.cs index 8d27d37ac..8367fdce9 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Networking/ServerLog.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Networking/ServerLog.cs @@ -81,8 +81,7 @@ namespace Barotrauma.Networking public const string SavePath = "ServerLogs"; private readonly Queue lines; - - private int unsavedLineCount; + private readonly Queue unsavedLines; private readonly bool[] msgTypeHidden = new bool[Enum.GetValues(typeof(MessageType)).Length]; @@ -98,6 +97,7 @@ namespace Barotrauma.Networking { ServerName = serverName; lines = new Queue(); + unsavedLines = new Queue(); foreach (MessageType messageType in Enum.GetValues(typeof(MessageType))) { @@ -117,22 +117,19 @@ namespace Barotrauma.Networking #endif lines.Enqueue(newText); + unsavedLines.Enqueue(newText); #if CLIENT if (listBox != null) { AddLine(newText); - listBox.UpdateScrollBarSize(); } #endif - - unsavedLineCount++; - - if (unsavedLineCount >= LinesPerFile) + if (unsavedLines.Count() >= LinesPerFile) { Save(); - unsavedLineCount = 0; + unsavedLines.Clear(); } while (lines.Count > LinesPerFile) @@ -176,7 +173,7 @@ namespace Barotrauma.Networking try { - File.WriteAllLines(filePath, lines.Select(l => l.SanitizedText)); + File.WriteAllLines(filePath, unsavedLines.Select(l => l.SanitizedText)); } catch (Exception e) { diff --git a/Barotrauma/BarotraumaShared/SharedSource/Networking/ServerSettings.cs b/Barotrauma/BarotraumaShared/SharedSource/Networking/ServerSettings.cs index 637ddd16a..d4031ebc6 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Networking/ServerSettings.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Networking/ServerSettings.cs @@ -97,7 +97,7 @@ namespace Barotrauma.Networking private readonly SerializableProperty property; private readonly string typeString; private readonly object parentObject; - + public string Name { get { return property.Name; } @@ -214,7 +214,7 @@ namespace Barotrauma.Networking public void Write(IWriteMessage msg, object overrideValue = null) { - if (overrideValue == null) overrideValue = property.GetValue(parentObject); + if (overrideValue == null) { overrideValue = Value; } switch (typeString) { case "float": @@ -314,6 +314,7 @@ namespace Barotrauma.Networking { NetPropertyData netPropertyData = new NetPropertyData(this, property, typeName); UInt32 key = ToolBox.StringToUInt32Hash(property.Name, md5); + if (key == 0) { key++; } //0 is reserved to indicate the end of the netproperties section of a message if (netProperties.ContainsKey(key)){ throw new Exception("Hashing collision in ServerSettings.netProperties: " + netProperties[key] + " has same key as " + property.Name + " (" + key.ToString() + ")"); } netProperties.Add(key, netPropertyData); } @@ -717,13 +718,6 @@ namespace Barotrauma.Networking set; } - [Serialize("", true)] - public string CampaignSubmarines - { - get; - set; - } - private YesNoMaybe traitorsEnabled; [Serialize(YesNoMaybe.No, true)] public YesNoMaybe TraitorsEnabled @@ -1067,7 +1061,6 @@ namespace Barotrauma.Networking } #if SERVER - MultiPlayerCampaign.UpdateCampaignSubs(); SelectNonHiddenSubmarine(); #endif } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Networking/SteamManager.cs b/Barotrauma/BarotraumaShared/SharedSource/Networking/SteamManager.cs index 98e6022d1..f4a80591c 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Networking/SteamManager.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Networking/SteamManager.cs @@ -136,6 +136,10 @@ namespace Barotrauma.Steam DebugConsole.NewMessage("Failed to increment stat \"" + statName + "\"."); #endif } + else + { + StoreStats(); + } return success; } @@ -150,6 +154,10 @@ namespace Barotrauma.Steam DebugConsole.NewMessage("Failed to increment stat \"" + statName + "\"."); #endif } + else + { + StoreStats(); + } return success; } diff --git a/Barotrauma/BarotraumaShared/SharedSource/Physics/PhysicsBody.cs b/Barotrauma/BarotraumaShared/SharedSource/Physics/PhysicsBody.cs index 5b4fd2ac9..6a21d2d52 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Physics/PhysicsBody.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Physics/PhysicsBody.cs @@ -88,6 +88,7 @@ namespace Barotrauma Circle, Rectangle, Capsule, HorizontalCapsule }; + public const float MinDensity = 0.01f; public const float DefaultAngularDamping = 5.0f; private static readonly List list = new List(); @@ -330,6 +331,7 @@ namespace Barotrauma public PhysicsBody(float width, float height, float radius, float density) { + density = Math.Max(density, MinDensity); CreateBody(width, height, radius, density); LastSentPosition = FarseerBody.Position; list.Add(this); @@ -367,7 +369,7 @@ namespace Barotrauma float radius = ConvertUnits.ToSimUnits(limbParams.Radius) * limbParams.Scale * limbParams.Ragdoll.LimbScale; float height = ConvertUnits.ToSimUnits(limbParams.Height) * limbParams.Scale * limbParams.Ragdoll.LimbScale; float width = ConvertUnits.ToSimUnits(limbParams.Width) * limbParams.Scale * limbParams.Ragdoll.LimbScale; - density = limbParams.Density; + density = Math.Max(limbParams.Density, MinDensity); CreateBody(width, height, radius, density); FarseerBody.BodyType = BodyType.Dynamic; FarseerBody.CollidesWith = Physics.CollisionWall | Physics.CollisionLevel; @@ -386,13 +388,13 @@ namespace Barotrauma float radius = ConvertUnits.ToSimUnits(element.GetAttributeFloat("radius", 0.0f)) * scale; float height = ConvertUnits.ToSimUnits(element.GetAttributeFloat("height", 0.0f)) * scale; float width = ConvertUnits.ToSimUnits(element.GetAttributeFloat("width", 0.0f)) * scale; - density = element.GetAttributeFloat("density", 10.0f); + density = Math.Max(element.GetAttributeFloat("density", 10.0f), MinDensity); CreateBody(width, height, radius, density); Enum.TryParse(element.GetAttributeString("bodytype", "Dynamic"), out BodyType bodyType); FarseerBody.BodyType = bodyType; FarseerBody.CollisionCategories = Physics.CollisionItem; FarseerBody.CollidesWith = Physics.CollisionWall | Physics.CollisionLevel | Physics.CollisionPlatform; - FarseerBody.Friction = element.GetAttributeFloat("friction", 0.3f); + FarseerBody.Friction = element.GetAttributeFloat("friction", 0.5f); FarseerBody.Restitution = element.GetAttributeFloat("restitution", 0.05f); FarseerBody.UserData = this; SetTransformIgnoreContacts(position, 0.0f); diff --git a/Barotrauma/BarotraumaShared/SharedSource/Serialization/SerializableProperty.cs b/Barotrauma/BarotraumaShared/SharedSource/Serialization/SerializableProperty.cs index 1f4ff6489..25cedf801 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Serialization/SerializableProperty.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Serialization/SerializableProperty.cs @@ -228,13 +228,13 @@ namespace Barotrauma { case "bool": bool boolValue = value == "true" || value == "True"; - if (TrySetValueWithoutReflection(parentObject, boolValue)) { return true; } + if (TrySetBoolValueWithoutReflection(parentObject, boolValue)) { return true; } PropertyInfo.SetValue(parentObject, boolValue, null); break; case "int": if (int.TryParse(value, out int intVal)) { - if (TrySetValueWithoutReflection(parentObject, intVal)) { return true; } + if (TrySetFloatValueWithoutReflection(parentObject, intVal)) { return true; } PropertyInfo.SetValue(parentObject, intVal, null); } else @@ -245,7 +245,7 @@ namespace Barotrauma case "float": if (float.TryParse(value, NumberStyles.Float, CultureInfo.InvariantCulture, out float floatVal)) { - if (TrySetValueWithoutReflection(parentObject, floatVal)) { return true; } + if (TrySetFloatValueWithoutReflection(parentObject, floatVal)) { return true; } PropertyInfo.SetValue(parentObject, floatVal, null); } else @@ -387,7 +387,7 @@ namespace Barotrauma { try { - if (TrySetValueWithoutReflection(parentObject, value)) { return true; } + if (TrySetFloatValueWithoutReflection(parentObject, value)) { return true; } PropertyInfo.SetValue(parentObject, value, null); } catch (TargetInvocationException e) @@ -408,7 +408,7 @@ namespace Barotrauma { try { - if (TrySetValueWithoutReflection(parentObject, value)) { return true; } + if (TrySetBoolValueWithoutReflection(parentObject, value)) { return true; } PropertyInfo.SetValue(parentObject, value, null); } catch (TargetInvocationException e) @@ -428,6 +428,7 @@ namespace Barotrauma { try { + if (TrySetFloatValueWithoutReflection(parentObject, value)) { return true; } PropertyInfo.SetValue(parentObject, value, null); } catch (TargetInvocationException e) @@ -466,6 +467,56 @@ namespace Barotrauma } } + public float GetFloatValue(object parentObject) + { + if (parentObject == null || PropertyInfo == null) { return 0.0f; } + + if (TryGetFloatValueWithoutReflection(parentObject, out float value)) + { + return value; + } + + try + { + return (float)PropertyInfo.GetValue(parentObject, null); + } + catch (TargetInvocationException e) + { + DebugConsole.ThrowError("Exception thrown by the target of SerializableProperty.GetValue", e.InnerException); + return 0.0f; + } + catch (Exception e) + { + DebugConsole.ThrowError("Error in SerializableProperty.GetValue", e); + return 0.0f; + } + } + + public bool GetBoolValue(object parentObject) + { + if (parentObject == null || PropertyInfo == null) { return false; } + + if (TryGetBoolValueWithoutReflection(parentObject, out bool value)) + { + return value; + } + + try + { + return (bool)PropertyInfo.GetValue(parentObject, null); + } + catch (TargetInvocationException e) + { + DebugConsole.ThrowError("Exception thrown by the target of SerializableProperty.GetValue", e.InnerException); + return false; + } + catch (Exception e) + { + DebugConsole.ThrowError("Error in SerializableProperty.GetValue", e); + return false; + } + } + public static string GetSupportedTypeName(Type type) { if (type.IsEnum) return "Enum"; @@ -481,125 +532,209 @@ namespace Barotrauma ///
private object TryGetValueWithoutReflection(object parentObject) { + if (PropertyType == typeof(float)) + { + if (TryGetFloatValueWithoutReflection(parentObject, out float value)) { return value; } + } + else if (PropertyType == typeof(bool)) + { + if (TryGetBoolValueWithoutReflection(parentObject, out bool value)) { return value; } + } + else if (PropertyType == typeof(string)) + { + if (TryGetStringValueWithoutReflection(parentObject, out string value)) { return value; } + } + return null; + } + + /// + /// Try getting the values of some commonly used properties directly without reflection + /// + private bool TryGetFloatValueWithoutReflection(object parentObject, out float value) + { + value = 0.0f; switch (Name) { - case "Voltage": - if (parentObject is Powered powered) { return powered.Voltage; } + case nameof(Powered.Voltage): + if (parentObject is Powered powered) { value = powered.Voltage; return true; } break; - case "Charge": - if (parentObject is PowerContainer powerContainer) { return powerContainer.Charge; } - break; - case "Overload": - if (parentObject is PowerTransfer powerTransfer) { return powerTransfer.Overload; } - break; - case "AvailableFuel": - { if (parentObject is Reactor reactor) { return reactor.AvailableFuel; } } - break; - case "FissionRate": - { if (parentObject is Reactor reactor) { return reactor.FissionRate; } } - break; - case "OxygenFlow": - if (parentObject is Vent vent) { return vent.OxygenFlow; } - break; - case "CurrFlow": - if (parentObject is Pump pump) { return pump.CurrFlow; } - if (parentObject is OxygenGenerator oxygenGenerator) { return oxygenGenerator.CurrFlow; } - break; - case "CurrentVolume": - if (parentObject is Engine engine) { return engine.CurrentVolume; } - break; - case "MotionDetected": - if (parentObject is MotionSensor motionSensor) { return motionSensor.MotionDetected; } - break; - case "Oxygen": - { if (parentObject is Character character) { return character.Oxygen; } } - break; - case "Health": - { if (parentObject is Character character) { return character.Health; } } - break; - case "OxygenAvailable": - { if (parentObject is Character character) { return character.OxygenAvailable; } } - break; - case "PressureProtection": - { if (parentObject is Character character) { return character.PressureProtection; } } - break; - case "IsDead": - { if (parentObject is Character character) { return character.IsDead; } } - break; - case "IsHuman": - { if (parentObject is Character character) { return character.IsHuman; } } - break; - case "IsOn": - { if (parentObject is LightComponent lightComponent) { return lightComponent.IsOn; } } - break; - case "Condition": + case nameof(PowerContainer.Charge): { - if (parentObject is Item item) { return item.Condition; } + if (parentObject is PowerContainer powerContainer) { value = powerContainer.Charge; return true; } } break; - case "ContainerIdentifier": + case nameof(PowerContainer.ChargePercentage): { - if (parentObject is Item item) { return item.ContainerIdentifier; } + if (parentObject is PowerContainer powerContainer) { value = powerContainer.ChargePercentage; return true; } } break; - case "PhysicsBodyActive": + case nameof(Reactor.AvailableFuel): + { if (parentObject is Reactor reactor) { value = reactor.AvailableFuel; return true; } } + break; + case nameof(Reactor.FissionRate): + { if (parentObject is Reactor reactor) { value = reactor.FissionRate; return true; } } + break; + case nameof(Reactor.Temperature): + { if (parentObject is Reactor reactor) { value = reactor.Temperature; return true; } } + break; + case nameof(Vent.OxygenFlow): + if (parentObject is Vent vent) { value = vent.OxygenFlow; return true; } + break; + case nameof(Pump.CurrFlow): + { if (parentObject is Pump pump) { value = pump.CurrFlow; return true; } } + if (parentObject is OxygenGenerator oxygenGenerator) { value = oxygenGenerator.CurrFlow; return true; } + break; + case nameof(Engine.CurrentBrokenVolume): + { if (parentObject is Engine engine) { value = engine.CurrentBrokenVolume; return true; } } + { if (parentObject is Pump pump) { value = pump.CurrentBrokenVolume; return true; } } + break; + case nameof(Engine.CurrentVolume): + { if (parentObject is Engine engine) { value = engine.CurrentVolume; return true; } } + break; + case nameof(Character.Oxygen): + { if (parentObject is Character character) { value = character.Oxygen; return true; } } + { if (parentObject is Hull hull) { value = hull.Oxygen; return true; } } + break; + case nameof(Character.Health): + { if (parentObject is Character character) { value = character.Health; return true; } } + break; + case nameof(Character.OxygenAvailable): + { if (parentObject is Character character) { value = character.OxygenAvailable; return true; } } + break; + case nameof(Character.PressureProtection): + { if (parentObject is Character character) { value = character.PressureProtection; return true; } } + break; + case nameof(Item.Condition): + { if (parentObject is Item item) { value = item.Condition; return true; } } + break; + case nameof(Character.SpeedMultiplier): + { if (parentObject is Character character) { value = character.SpeedMultiplier; return true; } } + break; + } + return false; + } + + /// + /// Try getting the values of some commonly used properties directly without reflection + /// + private bool TryGetBoolValueWithoutReflection(object parentObject, out bool value) + { + value = false; + switch (Name) + { + case nameof(ItemComponent.IsActive): + if (parentObject is ItemComponent ic) { value = ic.IsActive; return true; } + break; + case nameof(PowerTransfer.Overload): + if (parentObject is PowerTransfer powerTransfer) { value = powerTransfer.Overload; return true; } + break; + case nameof(MotionSensor.MotionDetected): + if (parentObject is MotionSensor motionSensor) { value = motionSensor.MotionDetected; return true; } + break; + case nameof(Character.IsDead): + { if (parentObject is Character character) { value = character.IsDead; return true; } } + break; + case nameof(Character.IsHuman): + { if (parentObject is Character character) { value = character.IsHuman; return true; } } + break; + case nameof(LightComponent.IsOn): + { if (parentObject is LightComponent lightComponent) { value = lightComponent.IsOn; return true; } } + break; + case nameof(Item.PhysicsBodyActive): { - if (parentObject is Item item) { return item.PhysicsBodyActive; } + if (parentObject is Item item) { value = item.PhysicsBodyActive; return true; } + } + break; + case nameof(DockingPort.Docked): + if (parentObject is DockingPort dockingPort) { value = dockingPort.Docked; return true; } + break; + case nameof(Reactor.TemperatureCritical): + if (parentObject is Reactor reactor) { value = reactor.TemperatureCritical; return true; } + break; + case nameof(TriggerComponent.TriggerActive): + if (parentObject is TriggerComponent trigger) { value = trigger.TriggerActive; return true; } + break; + case nameof(Controller.State): + if (parentObject is Controller controller) { value = controller.State; return true; } + break; + } + return false; + } + + /// + /// Try getting the values of some commonly used properties directly without reflection + /// + private bool TryGetStringValueWithoutReflection(object parentObject, out string value) + { + value = null; + switch (Name) + { + case nameof(Item.ContainerIdentifier): + { + if (parentObject is Item item) { value = item.ContainerIdentifier; return true; } } break; } - - return null; + return false; } /// /// Try setting the values of some commonly used properties directly without reflection /// - private bool TrySetValueWithoutReflection(object parentObject, object value) + private bool TrySetFloatValueWithoutReflection(object parentObject, float value) { switch (Name) { - case "Condition": - if (parentObject is Item item && value is float) { item.Condition = (float)value; return true; } + case nameof(Item.Condition): + if (parentObject is Item item) { item.Condition = value; return true; } break; - case "Voltage": - if (parentObject is Powered powered && value is float) { powered.Voltage = (float)value; return true; } + case nameof(Powered.Voltage): + if (parentObject is Powered powered) { powered.Voltage = value; return true; } break; - case "Charge": - if (parentObject is PowerContainer powerContainer && value is float) { powerContainer.Charge = (float)value; return true; } + case nameof(PowerContainer.Charge): + if (parentObject is PowerContainer powerContainer) { powerContainer.Charge = value; return true; } break; - case "AvailableFuel": - if (parentObject is Reactor reactor && value is float) { reactor.AvailableFuel = (float)value; return true; } + case nameof(Reactor.AvailableFuel): + if (parentObject is Reactor reactor) { reactor.AvailableFuel = value; return true; } break; - case "Oxygen": - { if (parentObject is Character character && value is float) { character.Oxygen = (float)value; return true; } } + case nameof(Character.Oxygen): + { if (parentObject is Character character) { character.Oxygen = value; return true; } } break; - case "HideFace": - { if (parentObject is Character character && value is bool) { character.HideFace = (bool)value; return true; } } + case nameof(Character.OxygenAvailable): + { if (parentObject is Character character) { character.OxygenAvailable = value; return true; } } break; - case "OxygenAvailable": - { if (parentObject is Character character && value is float) { character.OxygenAvailable = (float)value; return true; } } + case nameof(Character.PressureProtection): + { if (parentObject is Character character) { character.PressureProtection = value; return true; } } break; - case "ObstructVision": - { if (parentObject is Character character && value is bool) { character.ObstructVision = (bool)value; return true; } } + case nameof(Character.LowPassMultiplier): + { if (parentObject is Character character) { character.LowPassMultiplier = value; return true; } } break; - case "PressureProtection": - { if (parentObject is Character character && value is float) { character.PressureProtection = (float)value; return true; } } + case nameof(Character.SpeedMultiplier): + { if (parentObject is Character character) { character.StackSpeedMultiplier(value); return true; } } break; - case "LowPassMultiplier": - { if (parentObject is Character character && value is float) { character.LowPassMultiplier = (float)value; return true; } } - break; - case "SpeedMultiplier": - { if (parentObject is Character character && value is float) { character.StackSpeedMultiplier((float)value); return true; } } - break; - case "HealthMultiplier": - { if (parentObject is Character character && value is float) { character.StackHealthMultiplier((float)value); return true; } } - break; - case "IsOn": - { if (parentObject is LightComponent lightComponent && value is bool) { lightComponent.IsOn = (bool)value; return true; } } + case nameof(Character.HealthMultiplier): + { if (parentObject is Character character) { character.StackHealthMultiplier(value); return true; } } + break; + } + return false; + } + /// + /// Try setting the values of some commonly used properties directly without reflection + /// + private bool TrySetBoolValueWithoutReflection(object parentObject, bool value) + { + switch (Name) + { + case nameof(Character.ObstructVision): + { if (parentObject is Character character) { character.ObstructVision = value; return true; } } + break; + case nameof(LightComponent.IsOn): + { if (parentObject is LightComponent lightComponent) { lightComponent.IsOn = value; return true; } } + break; + case nameof(ItemComponent.IsActive): + { if (parentObject is ItemComponent ic) { ic.IsActive = value; return true; } } break; } - return false; } diff --git a/Barotrauma/BarotraumaShared/SharedSource/StatusEffects/DelayedEffect.cs b/Barotrauma/BarotraumaShared/SharedSource/StatusEffects/DelayedEffect.cs index 7bd12a932..e6d051abf 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/StatusEffects/DelayedEffect.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/StatusEffects/DelayedEffect.cs @@ -55,14 +55,23 @@ namespace Barotrauma public override void Apply(ActionType type, float deltaTime, Entity entity, ISerializableEntity target, Vector2? worldPosition = null) { if (this.type != type || !HasRequiredItems(entity)) { return; } - if (!Stackable && DelayList.Any(d => d.Parent == this && d.Targets.FirstOrDefault() == target)) { return; } + if (!Stackable) + { + foreach (var existingEffect in DelayList) + { + if (existingEffect.Parent == this && existingEffect.Targets.FirstOrDefault() == target) { return; } + } + } if (!IsValidTarget(target)) { return; } - if (!HasRequiredConditions(target.ToEnumerable())) { return; } + + currentTargets.Clear(); + currentTargets.Add(target); + if (!HasRequiredConditions(currentTargets)) { return; } switch (delayType) { case DelayTypes.Timer: - DelayList.Add(new DelayedListElement(this, entity, target.ToEnumerable(), delay, worldPosition, null)); + DelayList.Add(new DelayedListElement(this, entity, currentTargets, delay, worldPosition, null)); break; case DelayTypes.ReachCursor: Projectile projectile = (entity as Item)?.GetComponent(); @@ -78,16 +87,22 @@ namespace Barotrauma return; } - DelayList.Add(new DelayedListElement(this, entity, target.ToEnumerable(), Vector2.Distance(entity.WorldPosition, projectile.User.CursorWorldPosition), worldPosition, entity.WorldPosition)); + DelayList.Add(new DelayedListElement(this, entity, currentTargets, Vector2.Distance(entity.WorldPosition, projectile.User.CursorWorldPosition), worldPosition, entity.WorldPosition)); break; } } - public override void Apply(ActionType type, float deltaTime, Entity entity, IEnumerable targets, Vector2? worldPosition = null) + public override void Apply(ActionType type, float deltaTime, Entity entity, IReadOnlyList targets, Vector2? worldPosition = null) { if (this.type != type || !HasRequiredItems(entity)) { return; } - if (!Stackable && DelayList.Any(d => d.Parent == this && d.Targets.SequenceEqual(targets))) { return; } if (delayType == DelayTypes.ReachCursor && Character.Controlled == null) { return; } + if (!Stackable) + { + foreach (var existingEffect in DelayList) + { + if (existingEffect.Parent == this && existingEffect.Targets.SequenceEqual(targets)) { return; } + } + } currentTargets.Clear(); foreach (ISerializableEntity target in targets) diff --git a/Barotrauma/BarotraumaShared/SharedSource/StatusEffects/PropertyConditional.cs b/Barotrauma/BarotraumaShared/SharedSource/StatusEffects/PropertyConditional.cs index 258bd5466..b73d3f280 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/StatusEffects/PropertyConditional.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/StatusEffects/PropertyConditional.cs @@ -178,15 +178,28 @@ namespace Barotrauma { if (target is Item item) { - return item.ContainedItems.Any(it => Matches(it)); + foreach (var containedItem in item.ContainedItems) + { + if (Matches(containedItem)) { return true; } + } + return false; } else if (target is Items.Components.ItemComponent ic) { - return ic.Item.ContainedItems.Any(it => Matches(it)); + foreach (var containedItem in ic.Item.ContainedItems) + { + if (Matches(containedItem)) { return true; } + } + return false; } else if (target is Character character) { - return character.Inventory != null && character.Inventory.AllItems.Any(it => Matches(it)); + if (character.Inventory == null) { return false; } + foreach (var containedItem in character.Inventory.AllItems) + { + if (Matches(containedItem)) { return true; } + } + return false; } } @@ -204,56 +217,34 @@ namespace Barotrauma if (target == null) { return Operator == OperatorType.NotEquals; } return (Operator == OperatorType.Equals) == (target.Name == AttributeValue); case ConditionType.HasTag: + if (target == null) { return Operator == OperatorType.NotEquals; } + return MatchesTagCondition(target); + case ConditionType.HasStatusTag: + if (target == null) { return Operator == OperatorType.NotEquals; } + int matches = 0; + foreach (DurationListElement durationEffect in StatusEffect.DurationList) { - if (target == null) { return Operator == OperatorType.NotEquals; } - int matches = 0; + if (!durationEffect.Targets.Contains(target)) { continue; } foreach (string tag in SplitAttributeValue) { - if (target is Item item && item.HasTag(tag)) + if (durationEffect.Parent.HasTag(tag)) { matches++; } } - //If operator is == then it needs to match everything, otherwise if its != there must be zero matches. - return Operator == OperatorType.Equals ? matches >= SplitAttributeValue.Length : matches <= 0; } - case ConditionType.HasStatusTag: - if (target == null) { return Operator == OperatorType.NotEquals; } - bool success = false; - if (StatusEffect.DurationList.Any(d => d.Targets.Contains(target)) || DelayedEffect.DelayList.Any(d => d.Targets.Contains(target))) + foreach (DelayedListElement delayedEffect in DelayedEffect.DelayList) { - int matches = 0; - foreach (DurationListElement durationEffect in StatusEffect.DurationList) + if (!delayedEffect.Targets.Contains(target)) { continue; } + foreach (string tag in SplitAttributeValue) { - if (!durationEffect.Targets.Contains(target)) { continue; } - foreach (string tag in SplitAttributeValue) + if (delayedEffect.Parent.HasTag(tag)) { - if (durationEffect.Parent.HasTag(tag)) - { - matches++; - } - } - success = Operator == OperatorType.Equals ? matches >= SplitAttributeValue.Length : matches <= 0; - } - foreach (DelayedListElement delayedEffect in DelayedEffect.DelayList) - { - if (!delayedEffect.Targets.Contains(target)) { continue; } - foreach (string tag in SplitAttributeValue) - { - if (delayedEffect.Parent.HasTag(tag)) - { - matches++; - } + matches++; } } - return Operator == OperatorType.Equals ? matches >= SplitAttributeValue.Length : matches <= 0; } - else if (Operator == OperatorType.NotEquals) - { - //no status effects, so the tags cannot be equal -> condition met - return true; - } - return success; + return Operator == OperatorType.Equals ? matches >= SplitAttributeValue.Length : matches <= 0; case ConditionType.SpeciesName: { if (target == null) { return Operator == OperatorType.NotEquals; } @@ -335,96 +326,87 @@ namespace Barotrauma return false; } } + + private bool MatchesTagCondition(ISerializableEntity target) + { + if (!(target is Item item)) { return false; } + + int matches = 0; + foreach (string tag in SplitAttributeValue) + { + if (item.HasTag(tag)) + { + matches++; + } + } + //If operator is == then it needs to match everything, otherwise if its != there must be zero matches. + return Operator == OperatorType.Equals ? matches >= SplitAttributeValue.Length : matches <= 0; + } + + public bool MatchesTagCondition(string targetTag) + { + if (string.IsNullOrEmpty(targetTag) || Type != ConditionType.HasTag) { return false; } + + int matches = 0; + foreach (string tag in SplitAttributeValue) + { + if (targetTag.Equals(tag, StringComparison.OrdinalIgnoreCase)) + { + matches++; + } + } + //If operator is == then it needs to match everything, otherwise if its != there must be zero matches. + return Operator == OperatorType.Equals ? matches >= SplitAttributeValue.Length : matches <= 0; + } // TODO: refactor and add tests private bool Matches(ISerializableEntity target, SerializableProperty property) { - object propertyValue = property.GetValue(target); + Type type = property.PropertyType; - if (propertyValue == null) + if (type == typeof(float) || type == typeof(int)) { - DebugConsole.ThrowError("Couldn't compare " + AttributeValue.ToString() + " (" + AttributeValue.GetType() + ") to property \"" + property.Name + "\" - property.GetValue() returns null!"); + float floatValue = property.GetFloatValue(target); + switch (Operator) + { + case OperatorType.Equals: + return MathUtils.NearlyEqual(floatValue, FloatValue.Value); + case OperatorType.NotEquals: + return !MathUtils.NearlyEqual(floatValue, FloatValue.Value); + case OperatorType.GreaterThan: + return floatValue > FloatValue.Value; + case OperatorType.LessThan: + return floatValue < FloatValue.Value; + case OperatorType.GreaterThanEquals: + return floatValue >= FloatValue.Value; + case OperatorType.LessThanEquals: + return floatValue <= FloatValue.Value; + } return false; } - Type type = propertyValue.GetType(); - float? floatProperty = null; - if (type == typeof(float) || type == typeof(int)) - { - floatProperty = (float)propertyValue; - } switch (Operator) { case OperatorType.Equals: if (type == typeof(bool)) { - return ((bool)propertyValue) == (AttributeValue == "true" || AttributeValue == "True"); - } - else if (FloatValue == null) - { - return propertyValue.ToString().Equals(AttributeValue); - } - else - { - return propertyValue.Equals(FloatValue); + return property.GetBoolValue(target) == (AttributeValue == "true" || AttributeValue == "True"); } + return property.GetValue(target).ToString().Equals(AttributeValue); + case OperatorType.NotEquals: if (type == typeof(bool)) { - return ((bool)propertyValue) != (AttributeValue == "true" || AttributeValue == "True"); - } - else if (FloatValue == null) - { - return !propertyValue.ToString().Equals(AttributeValue); - } - else - { - return !propertyValue.Equals(FloatValue); + return property.GetBoolValue(target) != (AttributeValue == "true" || AttributeValue == "True"); } + return !property.GetValue(target).ToString().Equals(AttributeValue); case OperatorType.GreaterThan: - if (FloatValue == null) - { - DebugConsole.ThrowError("Couldn't compare " + AttributeValue.ToString() + " (" + AttributeValue.GetType() + ") to property \"" + property.Name + "\" (" + type + ")! " - + "Make sure the type of the value set in the config files matches the type of the property."); - } - else if (floatProperty > FloatValue) - { - return true; - } - break; - case OperatorType.LessThan: - if (FloatValue == null) - { - DebugConsole.ThrowError("Couldn't compare " + AttributeValue.ToString() + " (" + AttributeValue.GetType() + ") to property \"" + property.Name + "\" (" + type + ")! " - + "Make sure the type of the value set in the config files matches the type of the property."); - } - else if (floatProperty < FloatValue) - { - return true; - } - break; - case OperatorType.GreaterThanEquals: - if (FloatValue == null) - { - DebugConsole.ThrowError("Couldn't compare " + AttributeValue.ToString() + " (" + AttributeValue.GetType() + ") to property \"" + property.Name + "\" (" + type + ")! " - + "Make sure the type of the value set in the config files matches the type of the property."); - } - else if (floatProperty >= FloatValue) - { - return true; - } - break; case OperatorType.LessThanEquals: - if (FloatValue == null) - { - DebugConsole.ThrowError("Couldn't compare " + AttributeValue.ToString() + " (" + AttributeValue.GetType() + ") to property \"" + property.Name + "\" (" + type + ")! " - + "Make sure the type of the value set in the config files matches the type of the property."); - } - else if (floatProperty <= FloatValue) - { - return true; - } + case OperatorType.LessThan: + case OperatorType.GreaterThanEquals: + DebugConsole.ThrowError("Couldn't compare " + AttributeValue.ToString() + " (" + AttributeValue.GetType() + ") to property \"" + property.Name + "\" (" + type + ")! " + + "Make sure the type of the value set in the config files matches the type of the property."); break; } return false; diff --git a/Barotrauma/BarotraumaShared/SharedSource/StatusEffects/StatusEffect.cs b/Barotrauma/BarotraumaShared/SharedSource/StatusEffects/StatusEffect.cs index 43cd51e95..e0d34e7ef 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/StatusEffects/StatusEffect.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/StatusEffects/StatusEffect.cs @@ -217,7 +217,7 @@ namespace Barotrauma public string[] TalentIdentifiers; public bool GiveRandom; - public GiveTalentInfo(XElement element, string parentDebugName) + public GiveTalentInfo(XElement element, string _) { TalentIdentifiers = element.GetAttributeStringArray("talentidentifiers", new string[0], convertToLowerInvariant: true); GiveRandom = element.GetAttributeBool("giverandom", false); @@ -751,14 +751,41 @@ namespace Barotrauma for (int i = 0; i < propertyNames.Length; i++) { if (propertyNames[i] != "condition") { continue; } - if (propertyEffects[i].GetType() == typeof(float)) + object propertyEffect = propertyEffects[i]; + if (propertyEffect.GetType() == typeof(float)) { - return (float)propertyEffects[i] < 0.0f || (setValue && (float)propertyEffects[i] <= 0.0f); + return (float)propertyEffect < 0.0f || (setValue && (float)propertyEffect <= 0.0f); } } return false; } + public bool IncreasesItemCondition() + { + for (int i = 0; i < propertyNames.Length; i++) + { + if (propertyNames[i] != "condition") { continue; } + object propertyEffect = propertyEffects[i]; + if (propertyEffect.GetType() == typeof(float)) + { + return (float)propertyEffect > 0.0f || (setValue && (float)propertyEffect > 0.0f); + } + } + return false; + } + + public bool MatchesTagConditionals(ItemPrefab itemPrefab) + { + if (itemPrefab == null || !HasConditions) + { + return false; + } + else + { + return itemPrefab.Tags.Any(t => propertyConditionals.Any(pc => pc.MatchesTagCondition(t))); + } + } + public bool HasRequiredAfflictions(AttackResult attackResult) { if (requiredAfflictions == null) { return true; } @@ -787,7 +814,7 @@ namespace Barotrauma return true; } - public IEnumerable GetNearbyTargets(Vector2 worldPosition, List targets = null) + public IReadOnlyList GetNearbyTargets(Vector2 worldPosition, List targets = null) { targets ??= new List(); if (Range <= 0.0f) { return targets; } @@ -843,23 +870,24 @@ namespace Barotrauma } } - public bool HasRequiredConditions(IEnumerable targets) + public bool HasRequiredConditions(IReadOnlyList targets) { return HasRequiredConditions(targets, propertyConditionals); } - private bool HasRequiredConditions(IEnumerable targets, IEnumerable conditionals, bool targetingContainer = false) + private bool HasRequiredConditions(IReadOnlyList targets, IReadOnlyList conditionals, bool targetingContainer = false) { - if (conditionals.None()) { return true; } - if (requiredItems.Any() && requiredItems.All(ri => ri.MatchOnEmpty) && targets.None()) { return true; } + if (conditionals.Count == 0) { return true; } + if (targets.Count == 0 && requiredItems.Count > 0 && requiredItems.All(ri => ri.MatchOnEmpty)) { return true; } switch (conditionalComparison) { case PropertyConditional.Comparison.Or: - foreach (PropertyConditional pc in conditionals) + for (int i = 0; i < conditionals.Count; i++) { + var pc = conditionals[i]; if (pc.TargetContainer && !targetingContainer) { - var target = targets.FirstOrDefault(t => t is Item || t is ItemComponent); + var target = FindTargetItemOrComponent(targets); var targetItem = target as Item ?? (target as ItemComponent)?.Item; if (targetItem?.ParentInventory == null) { @@ -881,37 +909,28 @@ namespace Barotrauma if (pc.Type == PropertyConditional.ConditionType.HasTag) { //if we're checking for tags, just check the Item object, not the ItemComponents - if (HasRequiredConditions((container as ISerializableEntity).ToEnumerable(), pc.ToEnumerable(), targetingContainer: true)) { return true; } + if (pc.Matches(container)) { return true; } } else { - if (HasRequiredConditions(container.AllPropertyObjects, pc.ToEnumerable(), targetingContainer: true)) { return true; } + if (AnyTargetMatches(container.AllPropertyObjects, pc.TargetItemComponentName, pc)) { return true; } } } - if (owner is Character character && HasRequiredConditions(character.ToEnumerable(), pc.ToEnumerable(), targetingContainer: true)) { return true; } + if (owner is Character character && pc.Matches(character)) { return true; } } else { - foreach (ISerializableEntity target in targets) - { - if (!string.IsNullOrEmpty(pc.TargetItemComponentName)) - { - if (!(target is ItemComponent ic) || ic.Name != pc.TargetItemComponentName) - { - continue; - } - } - if (pc.Matches(target)) { return true; } - } + if (AnyTargetMatches(targets, pc.TargetItemComponentName, pc)) { return true; } } } return false; case PropertyConditional.Comparison.And: - foreach (PropertyConditional pc in conditionals) + for (int i = 0; i < conditionals.Count; i++) { + var pc = conditionals[i]; if (pc.TargetContainer && !targetingContainer) { - var target = targets.FirstOrDefault(t => t is Item || t is ItemComponent); + var target = FindTargetItemOrComponent(targets); var targetItem = target as Item ?? (target as ItemComponent)?.Item; if (targetItem?.ParentInventory == null) { @@ -933,29 +952,49 @@ namespace Barotrauma if (pc.Type == PropertyConditional.ConditionType.HasTag) { //if we're checking for tags, just check the Item object, not the ItemComponents - if (!HasRequiredConditions((container as ISerializableEntity).ToEnumerable(), pc.ToEnumerable(), targetingContainer: true)) { return false; } + if (!pc.Matches(container)) { return false; } } else { - if (!HasRequiredConditions(container.AllPropertyObjects, pc.ToEnumerable(), targetingContainer: true)) { return false; } + if (!AnyTargetMatches(container.AllPropertyObjects, pc.TargetItemComponentName, pc)) { return false; } } } - if (owner is Character character && !HasRequiredConditions(character.ToEnumerable(), pc.ToEnumerable(), targetingContainer: true)) { return false; } + if (owner is Character character && !pc.Matches(character)) { return false; } } else { - var validTargets = targets; - if (!string.IsNullOrEmpty(pc.TargetItemComponentName)) - { - validTargets = targets.Where(t => t is ItemComponent ic && ic.Name == pc.TargetItemComponentName); - } - if (targets.None(t => pc.Matches(t))) { return false; } + if (!AnyTargetMatches(targets, pc.TargetItemComponentName, pc)) { return false; } } } return true; default: throw new NotImplementedException(); } + + static bool AnyTargetMatches(IReadOnlyList targets, string targetItemComponentName, PropertyConditional conditional) + { + for (int i = 0; i < targets.Count; i++) + { + if (!string.IsNullOrEmpty(targetItemComponentName)) + { + if (!(targets[i] is ItemComponent ic) || ic.Name != targetItemComponentName) { continue; } + } + if (conditional.Matches(targets[i])) + { + return true; + } + } + return false; + } + + static ISerializableEntity FindTargetItemOrComponent(IReadOnlyList targets) + { + for (int i = 0; i < targets.Count; i++) + { + if (targets[i] is Item || targets[i] is ItemComponent) { return targets[i]; } + } + return null; + } } protected bool IsValidTarget(ISerializableEntity entity) @@ -972,14 +1011,27 @@ namespace Barotrauma { if (targetIdentifiers == null) { return true; } if (targetIdentifiers.Contains("structure")) { return true; } - if (targetIdentifiers.Any(id => id.Equals(structure.Prefab.Identifier, StringComparison.OrdinalIgnoreCase))) { return true; } + foreach (var id in targetIdentifiers) + { + if (id.Equals(structure.Prefab.Identifier, StringComparison.OrdinalIgnoreCase)) + { + return true; + } + } } else if (entity is Character character) { return IsValidTarget(character); } if (targetIdentifiers == null) { return true; } - return targetIdentifiers.Any(id => id.Equals(entity.Name, StringComparison.OrdinalIgnoreCase)); + foreach (var id in targetIdentifiers) + { + if (id.Equals(entity.Name, StringComparison.OrdinalIgnoreCase)) + { + return true; + } + } + return false; } protected bool IsValidTarget(ItemComponent itemComponent) @@ -989,7 +1041,14 @@ namespace Barotrauma if (targetIdentifiers == null) { return true; } if (targetIdentifiers.Contains("itemcomponent")) { return true; } if (itemComponent.Item.HasTag(targetIdentifiers)) { return true; } - return targetIdentifiers.Any(id => id.Equals(itemComponent.Item.Prefab.Identifier, StringComparison.OrdinalIgnoreCase)); + foreach (var id in targetIdentifiers) + { + if (id.Equals(itemComponent.Item.Prefab.Identifier, StringComparison.OrdinalIgnoreCase)) + { + return true; + } + } + return false; } protected bool IsValidTarget(Item item) @@ -999,7 +1058,14 @@ namespace Barotrauma if (targetIdentifiers == null) { return true; } if (targetIdentifiers.Contains("item")) { return true; } if (item.HasTag(targetIdentifiers)) { return true; } - return targetIdentifiers.Any(id => id.Equals(item.Prefab.Identifier, StringComparison.OrdinalIgnoreCase)); + foreach (var id in targetIdentifiers) + { + if (id.Equals(item.Prefab.Identifier, StringComparison.OrdinalIgnoreCase)) + { + return true; + } + } + return false; } protected bool IsValidTarget(Character character) @@ -1008,7 +1074,14 @@ namespace Barotrauma if (OnlyOutside && character.CurrentHull != null) { return false; } if (targetIdentifiers == null) { return true; } if (targetIdentifiers.Contains("character")) { return true; } - return targetIdentifiers.Any(id => id.Equals(character.SpeciesName, StringComparison.OrdinalIgnoreCase)); + foreach (var id in targetIdentifiers) + { + if (id.Equals(character.SpeciesName, StringComparison.OrdinalIgnoreCase)) + { + return true; + } + } + return false; } public void SetUser(Character user) @@ -1037,12 +1110,14 @@ namespace Barotrauma } } - if (!HasRequiredConditions(target.ToEnumerable())) { return; } - Apply(deltaTime, entity, target.ToEnumerable(), worldPosition); + currentTargets.Clear(); + currentTargets.Add(target); + if (!HasRequiredConditions(currentTargets)) { return; } + Apply(deltaTime, entity, currentTargets, worldPosition); } protected readonly List currentTargets = new List(); - public virtual void Apply(ActionType type, float deltaTime, Entity entity, IEnumerable targets, Vector2? worldPosition = null) + public virtual void Apply(ActionType type, float deltaTime, Entity entity, IReadOnlyList targets, Vector2? worldPosition = null) { if (this.type != type) { return; } @@ -1095,39 +1170,52 @@ namespace Barotrauma return hull; } - private Vector2 GetPosition(Entity entity, IEnumerable targets, Vector2? worldPosition = null) + private Vector2 GetPosition(Entity entity, IReadOnlyList targets, Vector2? worldPosition = null) { Vector2 position = worldPosition ?? (entity == null || entity.Removed ? Vector2.Zero : entity.WorldPosition); if (worldPosition == null) { - if (entity is Character character && !character.Removed && targetLimbs?.FirstOrDefault(l => l != LimbType.None) is LimbType limbType) + if (entity is Character character && !character.Removed && targetLimbs != null) { - Limb limb = character.AnimController.GetLimb(limbType); - if (limb != null && !limb.Removed) + foreach (var targetLimbType in targetLimbs) { - position = limb.WorldPosition; + Limb limb = character.AnimController.GetLimb(targetLimbType); + if (limb != null && !limb.Removed) + { + position = limb.WorldPosition; + break; + } + } + } + else if (HasTargetType(TargetType.Contained)) + { + for (int i = 0; i < targets.Count; i++) + { + if (targets[i] is Item targetItem) + { + position = targetItem.WorldPosition; + break; + } } } else { - if (targets.FirstOrDefault(t => t is Limb) is Limb targetLimb && !targetLimb.Removed) + for (int i = 0; i < targets.Count; i++) { - position = targetLimb.WorldPosition; - } - else if (HasTargetType(TargetType.Contained)) - { - if (targets.FirstOrDefault(t => t is Item) is Item targetItem) + if (targets[i] is Limb targetLimb && !targetLimb.Removed) { - position = targetItem.WorldPosition; + position = targetLimb.WorldPosition; + break; } } } + } position += Offset; return position; } - protected void Apply(float deltaTime, Entity entity, IEnumerable targets, Vector2? worldPosition = null) + protected void Apply(float deltaTime, Entity entity, IReadOnlyList targets, Vector2? worldPosition = null) { if (lifeTime > 0) { @@ -1137,58 +1225,68 @@ namespace Barotrauma Hull hull = GetHull(entity); Vector2 position = GetPosition(entity, targets, worldPosition); - foreach (ISerializableEntity serializableEntity in targets) + if (useItemCount > 0) { - if (!(serializableEntity is Item item)) { continue; } - - Character targetCharacter = targets.FirstOrDefault(t => t is Character character && !character.Removed) as Character; - if (targetCharacter == null) + Character useTargetCharacter = null; + Limb useTargetLimb = null; + for (int i = 0; i < targets.Count; i++) { - foreach (var target in targets) + if (targets[i] is Character character && !character.Removed) { - if (target is Limb limb && limb.character != null && !limb.character.Removed) - { - targetCharacter = ((Limb)target).character; - } + useTargetCharacter = character; + break; + } + else if (targets[i] is Limb limb && limb.character != null && !limb.character.Removed) + { + useTargetLimb = limb; + useTargetCharacter ??= limb.character; + break; } } - for (int i = 0; i < useItemCount; i++) + for (int i = 0; i < targets.Count; i++) { - if (item.Removed) { continue; } - item.Use(deltaTime, targetCharacter, targets.FirstOrDefault(t => t is Limb) as Limb); + if (!(targets[i] is Item item)) { continue; } + for (int j = 0; j < useItemCount; j++) + { + if (item.Removed) { continue; } + item.Use(deltaTime, useTargetCharacter, useTargetLimb); + } } } if (removeItem) { - foreach (var target in targets) + for (int i = 0; i < targets.Count; i++) { - if (target is Item item) { Entity.Spawner?.AddToRemoveQueue(item); } + if (targets[i] is Item item) { Entity.Spawner?.AddToRemoveQueue(item); } } } if (removeCharacter) { - foreach (var target in targets) + for (int i = 0; i < targets.Count; i++) { - if (target is Character character) { Entity.Spawner?.AddToRemoveQueue(character); } + if (targets[i] is Character character) { Entity.Spawner?.AddToRemoveQueue(character); } } } if (breakLimb || hideLimb) { - foreach (var target in targets) + for (int i = 0; i < targets.Count; i++) { - if (target is Character character) + if (targets[i] is Character character) { - var matchingLimb = character.AnimController.Limbs.FirstOrDefault(l => l.body == sourceBody); - if (matchingLimb != null) + foreach (Limb limb in character.AnimController.Limbs) { - if (breakLimb) + if (limb.body == sourceBody) { - character.TrySeverLimbJoints(matchingLimb, severLimbsProbability: 100, damage: 100, allowBeheading: true); - } - else - { - matchingLimb.HideAndDisable(hideLimbTimer); + if (breakLimb) + { + character.TrySeverLimbJoints(limb, severLimbsProbability: 100, damage: 100, allowBeheading: true, attacker: user); + } + else + { + limb.HideAndDisable(hideLimbTimer); + } + break; } } } @@ -1201,10 +1299,10 @@ namespace Barotrauma } else { - foreach (ISerializableEntity target in targets) + for (int i = 0; i < targets.Count; i++) { + var target = targets[i]; if (target == null) { continue; } - if (target is Entity targetEntity) { if (targetEntity.Removed) { continue; } @@ -1215,13 +1313,13 @@ namespace Barotrauma position = limb.WorldPosition + Offset; } - for (int i = 0; i < propertyNames.Length; i++) + for (int j = 0; j < propertyNames.Length; j++) { - if (target == null || target.SerializableProperties == null || !target.SerializableProperties.TryGetValue(propertyNames[i], out SerializableProperty property)) + if (target == null || target.SerializableProperties == null || !target.SerializableProperties.TryGetValue(propertyNames[j], out SerializableProperty property)) { continue; } - ApplyToProperty(target, property, propertyEffects[i], deltaTime); + ApplyToProperty(target, property, j, deltaTime); } } } @@ -1231,8 +1329,11 @@ namespace Barotrauma explosion.Explode(position, damageSource: entity, attacker: user); } - foreach (ISerializableEntity target in targets) + bool isNotClient = GameMain.NetworkMember == null || !GameMain.NetworkMember.IsClient; + + for (int i = 0; i < targets.Count; i++) { + var target = targets[i]; //if the effect has a duration, these will be done in the UpdateAll method if (duration > 0) { break; } if (target == null) { continue; } @@ -1251,7 +1352,7 @@ namespace Barotrauma if (limb.IsSevered) { continue; } if (targetLimbs != null && !targetLimbs.Contains(limb.type)) { continue; } AttackResult result = limb.character.DamageLimb(position, limb, newAffliction.ToEnumerable(), stun: 0.0f, playSound: false, attackImpulse: 0.0f, attacker: affliction.Source, allowStacking: !setValue); - limb.character.TrySeverLimbJoints(limb, SeverLimbsProbability, disableDeltaTime ? result.Damage : result.Damage / deltaTime, allowBeheading: true); + limb.character.TrySeverLimbJoints(limb, SeverLimbsProbability, disableDeltaTime ? result.Damage : result.Damage / deltaTime, allowBeheading: true, attacker: affliction.Source); RegisterTreatmentResults(entity, limb, affliction, result); //only apply non-limb-specific afflictions to the first limb if (!affliction.Prefab.LimbSpecific) { break; } @@ -1263,7 +1364,7 @@ namespace Barotrauma if (limb.character.Removed || limb.Removed) { continue; } newAffliction = GetMultipliedAffliction(affliction, entity, limb.character, deltaTime, multiplyAfflictionsByMaxVitality); AttackResult result = limb.character.DamageLimb(position, limb, newAffliction.ToEnumerable(), stun: 0.0f, playSound: false, attackImpulse: 0.0f, attacker: affliction.Source, allowStacking: !setValue); - limb.character.TrySeverLimbJoints(limb, SeverLimbsProbability, disableDeltaTime ? result.Damage : result.Damage / deltaTime, allowBeheading: true); + limb.character.TrySeverLimbJoints(limb, SeverLimbsProbability, disableDeltaTime ? result.Damage : result.Damage / deltaTime, allowBeheading: true, attacker: affliction.Source); RegisterTreatmentResults(entity, limb, affliction, result); } } @@ -1302,7 +1403,7 @@ namespace Barotrauma } } - if (aiTriggers.Any()) + if (aiTriggers.Count > 0) { Character targetCharacter = target as Character; if (targetCharacter == null) @@ -1328,7 +1429,7 @@ namespace Barotrauma } } - if (talentTriggers.Any()) + if (talentTriggers.Count > 0) { Character targetCharacter = CharacterFromTarget(target); if (targetCharacter != null && !targetCharacter.Removed) @@ -1337,14 +1438,12 @@ namespace Barotrauma { targetCharacter.CheckTalents(AbilityEffectType.OnStatusEffectIdentifier, new AbilityStatusEffectIdentifier(talentTrigger)); } - } } - if (GameMain.NetworkMember == null || !GameMain.NetworkMember.IsClient) + if (isNotClient) { // these effects do not need to be run clientside, as they are replicated from server to clients anyway - foreach (int giveExperience in giveExperiences) { Character targetCharacter = CharacterFromTarget(target); @@ -1354,7 +1453,7 @@ namespace Barotrauma } } - if (giveSkills.Any()) + if (giveSkills.Count > 0) { foreach (GiveSkill giveSkill in giveSkills) { @@ -1373,7 +1472,7 @@ namespace Barotrauma } } - if (giveTalentInfos.Any()) + if (giveTalentInfos.Count > 0) { Character targetCharacter = CharacterFromTarget(target); if (targetCharacter?.Info == null) { continue; } @@ -1408,7 +1507,6 @@ namespace Barotrauma fire.Size = new Vector2(FireSize, fire.Size.Y); } - bool isNotClient = GameMain.NetworkMember == null || !GameMain.NetworkMember.IsClient; if (isNotClient && GameMain.GameSession?.EventManager is { } eventManager) { foreach (EventPrefab eventPrefab in triggeredEvents) @@ -1423,7 +1521,7 @@ namespace Barotrauma { List eventTargets = targets.Where(t => t is Entity).Cast().ToList(); - if (eventTargets.Any()) + if (eventTargets.Count > 0) { scriptedEvent.Targets.Add(triggeredEventTargetTag, eventTargets); } @@ -1616,17 +1714,19 @@ namespace Barotrauma } } - partial void ApplyProjSpecific(float deltaTime, Entity entity, IEnumerable targets, Hull currentHull, Vector2 worldPosition, bool playSound); + partial void ApplyProjSpecific(float deltaTime, Entity entity, IReadOnlyList targets, Hull currentHull, Vector2 worldPosition, bool playSound); - private void ApplyToProperty(ISerializableEntity target, SerializableProperty property, object value, float deltaTime) + private void ApplyToProperty(ISerializableEntity target, SerializableProperty property, int effectIndex, float deltaTime) { if (disableDeltaTime || setValue) { deltaTime = 1.0f; } - if (value is int || value is float) + object propertyEffect = propertyEffects[effectIndex]; + if (propertyEffect is int || propertyEffect is float) { - var propertyValue = property.GetValue(target); - if (propertyValue is float propertyValueF) + float propertyValueF = property.GetFloatValue(target); + if (property.PropertyType == typeof(float)) { - float floatValue = Convert.ToSingle(value) * deltaTime; + float floatValue = propertyEffect is float single ? single : (int)propertyEffect; + floatValue *= deltaTime; if (!setValue) { floatValue += propertyValueF; @@ -1634,18 +1734,23 @@ namespace Barotrauma property.TrySetValue(target, floatValue); return; } - else if (propertyValue is int integer) + else if (property.PropertyType == typeof(int)) { - int intValue = (int)(Convert.ToInt32(value) * deltaTime); + int intValue = (int)(propertyEffect is float single ? single * deltaTime : (int)propertyEffect * deltaTime); if (!setValue) { - intValue += integer; + intValue += (int)propertyValueF; } property.TrySetValue(target, intValue); return; } } - property.TrySetValue(target, value); + else if (propertyEffect is bool propertyValueBool) + { + property.TrySetValue(target, propertyValueBool); + return; + } + property.TrySetValue(target, propertyEffect); } public static void UpdateAll(float deltaTime) @@ -1682,7 +1787,7 @@ namespace Barotrauma { continue; } - element.Parent.ApplyToProperty(target, property, element.Parent.propertyEffects[n], CoroutineManager.UnscaledDeltaTime); + element.Parent.ApplyToProperty(target, property, n, CoroutineManager.UnscaledDeltaTime); } foreach (Affliction affliction in element.Parent.Afflictions) diff --git a/Barotrauma/BarotraumaShared/SharedSource/SteamAchievementManager.cs b/Barotrauma/BarotraumaShared/SharedSource/SteamAchievementManager.cs index f05045e14..c6b96185c 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/SteamAchievementManager.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/SteamAchievementManager.cs @@ -224,9 +224,9 @@ namespace Barotrauma public static void OnItemRepaired(Item item, Character fixer) { #if CLIENT - if (GameMain.Client != null) return; + if (GameMain.Client != null) { return; } #endif - if (fixer == null) return; + if (fixer == null) { return; } UnlockAchievement(fixer, "repairdevice"); UnlockAchievement(fixer, "repair" + item.Prefab.Identifier); @@ -234,10 +234,10 @@ namespace Barotrauma public static void OnAfflictionRemoved(Affliction affliction, Character character) { - if (string.IsNullOrEmpty(affliction.Prefab.AchievementOnRemoved)) return; + if (string.IsNullOrEmpty(affliction.Prefab.AchievementOnRemoved)) { return; } #if CLIENT - if (GameMain.Client != null) return; + if (GameMain.Client != null) { return; } #endif UnlockAchievement(character, affliction.Prefab.AchievementOnRemoved); } @@ -245,26 +245,29 @@ namespace Barotrauma public static void OnCharacterRevived(Character character, Character reviver) { #if CLIENT - if (GameMain.Client != null) return; + if (GameMain.Client != null) { return; } #endif - if (reviver == null) return; + if (reviver == null) { return; } UnlockAchievement(reviver, "healcrit"); } public static void OnCharacterKilled(Character character, CauseOfDeath causeOfDeath) { #if CLIENT - if (GameMain.Client != null || GameMain.GameSession == null) return; -#endif + if (GameMain.Client != null || GameMain.GameSession == null) { return; } if (character != Character.Controlled && causeOfDeath.Killer != null && causeOfDeath.Killer == Character.Controlled) { - SteamManager.IncrementStat( - character.IsHuman ? "humanskilled" : "monsterskilled", - 1); + IncrementStat(causeOfDeath.Killer, character.IsHuman ? "humanskilled" : "monsterskilled", 1); } +#elif SERVER + if (character != causeOfDeath.Killer && causeOfDeath.Killer != null) + { + IncrementStat(causeOfDeath.Killer, character.IsHuman ? "humanskilled" : "monsterskilled", 1); + } +#endif roundData?.Casualties.Add(character); @@ -337,13 +340,15 @@ namespace Barotrauma public static void OnTraitorWin(Character character) { #if CLIENT - if (GameMain.Client != null || GameMain.GameSession == null) return; + if (GameMain.Client != null || GameMain.GameSession == null) { return; } #endif UnlockAchievement(character, "traitorwin"); } public static void OnRoundEnded(GameSession gameSession) { + if (CheatsEnabled) { return; } + //made it to the destination if (gameSession?.Submarine != null && Level.Loaded != null && gameSession.Submarine.AtEndExit) { @@ -358,14 +363,14 @@ namespace Barotrauma !myCharacter.IsDead && (myCharacter.Submarine == gameSession.Submarine || (Level.Loaded?.EndOutpost != null && myCharacter.Submarine == Level.Loaded.EndOutpost))) { - SteamManager.IncrementStat("kmstraveled", levelLengthKilometers); + IncrementStat("kmstraveled", levelLengthKilometers); } #endif } else { //in sp making it to the end is enough - SteamManager.IncrementStat("kmstraveled", levelLengthKilometers); + IncrementStat("kmstraveled", levelLengthKilometers); } } @@ -461,42 +466,63 @@ namespace Barotrauma private static void UnlockAchievement(Character recipient, string identifier) { - if (CheatsEnabled) return; - if (recipient == null) return; + if (CheatsEnabled || recipient == null) { return; } #if CLIENT if (recipient == Character.Controlled) { UnlockAchievement(identifier); } -#endif -#if SERVER +#elif SERVER GameMain.Server?.GiveAchievement(recipient, identifier); #endif } - + + private static void IncrementStat(Character recipient, string identifier, int amount) + { + if (CheatsEnabled || recipient == null) { return; } +#if CLIENT + if (recipient == Character.Controlled) + { + SteamManager.IncrementStat(identifier, amount); + } +#elif SERVER + GameMain.Server?.IncrementStat(recipient, identifier, amount); +#endif + } + + public static void IncrementStat(string identifier, int amount) + { + if (CheatsEnabled) { return; } + SteamManager.IncrementStat(identifier, amount); + } + + public static void IncrementStat(string identifier, float amount) + { + if (CheatsEnabled) { return; } + SteamManager.IncrementStat(identifier, amount); + } + public static void UnlockAchievement(string identifier, bool unlockClients = false, Func conditions = null) { - if (CheatsEnabled) return; + if (CheatsEnabled) { return; } identifier = identifier.ToLowerInvariant(); #if SERVER - if (unlockClients && GameMain.Server != null) { foreach (Client c in GameMain.Server.ConnectedClients) { - if (conditions != null && !conditions(c.Character)) continue; + if (conditions != null && !conditions(c.Character)) { continue; } GameMain.Server.GiveAchievement(c, identifier); } } #endif - //already unlocked, no need to do anything - if (unlockedAchievements.Contains(identifier)) return; + if (unlockedAchievements.Contains(identifier)) { return; } unlockedAchievements.Add(identifier); #if CLIENT - if (conditions != null && !conditions(Character.Controlled)) return; + if (conditions != null && !conditions(Character.Controlled)) { return; } #endif SteamManager.UnlockAchievement(identifier); diff --git a/Barotrauma/BarotraumaShared/SharedSource/Utils/IdRemap.cs b/Barotrauma/BarotraumaShared/SharedSource/Utils/IdRemap.cs index 038c69e55..81af9005f 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Utils/IdRemap.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Utils/IdRemap.cs @@ -7,7 +7,7 @@ using System.Xml.Linq; namespace Barotrauma { - public class IdRemap + public sealed class IdRemap { public static readonly IdRemap DiscardId = new IdRemap(null, -1); diff --git a/Barotrauma/BarotraumaShared/SharedSource/Utils/SafeIO.cs b/Barotrauma/BarotraumaShared/SharedSource/Utils/SafeIO.cs index 0621dd858..2fece0b4d 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Utils/SafeIO.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Utils/SafeIO.cs @@ -58,21 +58,37 @@ namespace Barotrauma.IO public static class SafeXML { - public static void SaveSafe(this System.Xml.Linq.XDocument doc, string path) + public static void SaveSafe(this System.Xml.Linq.XDocument doc, string path, bool throwExceptions = false) { if (!Validation.CanWrite(path, false)) { - DebugConsole.ThrowError($"Cannot save XML document to \"{path}\": modifying the files in this folder/with this extension is not allowed."); + string errorMsg = $"Cannot save XML document to \"{path}\": modifying the files in this folder/with this extension is not allowed."; + if (throwExceptions) + { + throw new InvalidOperationException(errorMsg); + } + else + { + DebugConsole.ThrowError(errorMsg); + } return; } doc.Save(path); } - public static void SaveSafe(this System.Xml.Linq.XElement element, string path) + public static void SaveSafe(this System.Xml.Linq.XElement element, string path, bool throwExceptions = false) { if (!Validation.CanWrite(path, false)) { - DebugConsole.ThrowError($"Cannot save XML element to \"{path}\": modifying the files in this folder/with this extension is not allowed."); + string errorMsg = $"Cannot save XML element to \"{path}\": modifying the files in this folder/with this extension is not allowed."; + if (throwExceptions) + { + throw new InvalidOperationException(errorMsg); + } + else + { + DebugConsole.ThrowError(errorMsg); + } return; } element.Save(path); diff --git a/Barotrauma/BarotraumaShared/SharedSource/Utils/SaveUtil.cs b/Barotrauma/BarotraumaShared/SharedSource/Utils/SaveUtil.cs index a797bde55..6e427d5ce 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Utils/SaveUtil.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Utils/SaveUtil.cs @@ -7,7 +7,8 @@ using System.Linq; using System.Text; using System.Threading; using System.Xml.Linq; -using Microsoft.Xna.Framework; +using Steamworks.Data; +using Color = Microsoft.Xna.Framework.Color; namespace Barotrauma { @@ -66,6 +67,7 @@ namespace Barotrauma catch (Exception e) { DebugConsole.ThrowError("Failed to clear folder", e); + return; } try @@ -75,6 +77,7 @@ namespace Barotrauma catch (Exception e) { DebugConsole.ThrowError("Error saving gamesession", e); + return; } try @@ -107,6 +110,7 @@ namespace Barotrauma catch (Exception e) { DebugConsole.ThrowError("Error saving submarine", e); + return; } try @@ -356,10 +360,10 @@ namespace Barotrauma private static bool DecompressFile(bool writeFile, string sDir, GZipStream zipStream, ProgressDelegate progress, out string fileName) { fileName = null; - + //Decompress file name byte[] bytes = new byte[sizeof(int)]; - int Readed = zipStream.Read(bytes, 0, sizeof(int)); + int Readed = Read(zipStream, bytes, sizeof(int)); if (Readed < sizeof(int)) return false; @@ -373,29 +377,29 @@ namespace Barotrauma StringBuilder sb = new StringBuilder(); for (int i = 0; i < iNameLen; i++) { - zipStream.Read(bytes, 0, sizeof(char)); + Read(zipStream, bytes, sizeof(char)); char c = BitConverter.ToChar(bytes, 0); sb.Append(c); } string sFileName = sb.ToString(); - + fileName = sFileName; progress?.Invoke(sFileName); //Decompress file content bytes = new byte[sizeof(int)]; - zipStream.Read(bytes, 0, sizeof(int)); + Read(zipStream, bytes, sizeof(int)); int iFileLen = BitConverter.ToInt32(bytes, 0); bytes = new byte[iFileLen]; - zipStream.Read(bytes, 0, bytes.Length); + Read(zipStream, bytes, bytes.Length); string sFilePath = Path.Combine(sDir, sFileName); string sFinalDir = Path.GetDirectoryName(sFilePath); string sDirFull = (string.IsNullOrEmpty(sDir) ? Directory.GetCurrentDirectory() : Path.GetFullPath(sDir)).CleanUpPathCrossPlatform(correctFilenameCase: false); string sFinalDirFull = (string.IsNullOrEmpty(sFinalDir) ? Directory.GetCurrentDirectory() : Path.GetFullPath(sFinalDir)).CleanUpPathCrossPlatform(correctFilenameCase: false); - + if (!sFinalDirFull.StartsWith(sDirFull, StringComparison.OrdinalIgnoreCase)) { throw new InvalidOperationException( @@ -427,6 +431,26 @@ namespace Barotrauma return true; } + private static int Read(GZipStream zipStream, byte[] bytes, int amount) + { + int read = 0; + + // FIXME workaround for .NET6 causing save decompression to fail +#if NET6_0 && LINUX + for (int i = 0; i < amount; i++) + { + int result = zipStream.ReadByte(); + if (result < 0) { break; } + + bytes[i] = (byte) result; + read++; + } +#else + read = zipStream.Read(bytes, 0, amount); +#endif + return read; + } + public static void DecompressToDirectory(string sCompressedFile, string sDir, ProgressDelegate progress) { DebugConsole.Log("Decompressing " + sCompressedFile + " to " + sDir + "..."); diff --git a/Barotrauma/BarotraumaShared/SharedSource/Utils/TaskExtensions.cs b/Barotrauma/BarotraumaShared/SharedSource/Utils/TaskExtensions.cs new file mode 100644 index 000000000..1b4d14dda --- /dev/null +++ b/Barotrauma/BarotraumaShared/SharedSource/Utils/TaskExtensions.cs @@ -0,0 +1,18 @@ +using System.Threading.Tasks; + +namespace Barotrauma +{ + static class TaskExtensions + { + public static bool TryGetResult(this Task task, out T result) + { + if (task is Task { IsCompletedSuccessfully: true } castTask) + { + result = castTask.Result; + return true; + } + result = default; + return false; + } + } +} diff --git a/Barotrauma/BarotraumaShared/SharedSource/Utils/ToolBox.cs b/Barotrauma/BarotraumaShared/SharedSource/Utils/ToolBox.cs index 3c4e97c06..bc5aa7d5b 100644 --- a/Barotrauma/BarotraumaShared/SharedSource/Utils/ToolBox.cs +++ b/Barotrauma/BarotraumaShared/SharedSource/Utils/ToolBox.cs @@ -535,16 +535,6 @@ namespace Barotrauma } } - // Enum.HasFlag() sucks - public static bool IsBitSet(this T self, T bit) where T : struct, Enum - { - // This uses Unsafe.As for performance reasons, as - // C# will otherwise not allow a T -> int cast - // without first casting to object, which would make - // this not any better than Enum.HasFlag - return (Unsafe.As(ref self) & Unsafe.As(ref bit)) != 0; - } - public static string ByteArrayToString(byte[] ba) { StringBuilder hex = new StringBuilder(ba.Length * 2); diff --git a/Barotrauma/BarotraumaShared/Submarines/Barsuk.sub b/Barotrauma/BarotraumaShared/Submarines/Barsuk.sub new file mode 100644 index 0000000000000000000000000000000000000000..4205808246a6e69fdcb9a5b328512b5bd47efc2d GIT binary patch literal 235503 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 z zVW~fUSTqn`Jwa;Lcar+|Ij>_ zX7ZY;(%#tQ&hdL8ncNOLznlcQh$M)xy@0${;R*dC{gr&#y`0z_F%^bLf;gw02g5!r z`>;pjC>=`DeeFa*jqRxEg4?k}JJ54nl-qFxHLeRpC-fZMJH;mdRnLCWugtW=b-cLJ zi1;TMY1m(3LgW`1hAo1zJjWOi9)K$HybTBdX@Wfr2%1T}lLaw*7|y9xnIT?|q6i%Y zAR7oLEJ`DDr@yq*pQe}9G_s8-zskplAwDNq6gXlyo5#1hjh^A#85Bo!03}a2HKFObla--<%@#rg_SVsYm(?HCaNGqp2;IduqTP_0 zTEJT(nZe!>#~Us)-k{wbg0vKUAX}!MQGo2bvICq6y|Cjr)EYccNb|vk!ZAm6Os_nj zM!kn{szOTDFK^ym^_PAjzHj|JA^WrS1z(}{zI)&LNtBs)IC;RSQNMeCCsGE^KxhGZ zO2P{)2^?Cmlc(f3mhh1a#Lt~QB^~hC#8;}sTFoQc$k4XcYDcL#;$}#sz;;W-g*`^n z{xKEFOzi!MoncLYf##ju@J`Mf*9Zg!cqboJY`Eo_L`?02QoE2aBQOhVz$S@X7_a3^ zrf$PqHxG0x#e(9{)?6MLcO14b8m4Y&mn22Nen^9~6(u>5)0W+k#-&7rCO zlT1mSd3u5-3`hs&n?=K^whtVq5qd$eo>w2G--NbdiMDNc9|>_2^Z04^DE(_8_J;Xj z&o1SILws*;YQX8>%SZ6d$(Me!{XdTzZ;kIzRj#L5Fhj#n`SrsbP z41*5Ugi4p{LxrPXCAFjU&mJgt&(2~1o~PY^hOqP8fy?H~!0Gs!1A~qOBvZCi!6c3kNzQnh%4hFb~ccYGXju3TK_D1uc1qSXOD z$5vND0(T{R5vEK{_p>KkXK_jqNXuiEW|n4_-i)OMxR$!2K+{Us2?D5EXvPj~W(dZ`S>pUjz zht&7P@@)&Zck#7R*-$X6K)L*2>9;1EqByH7rs(;;Pd_)ETt;|z#8Kwcp)OO<>yie% z8IDE`cAHK#@6So~Z>oD!GGHCg_AG0wZK*4CM%@`!1VwxCW4bT1e1h^^U9v}ZB=?@r z=|%My_hV4fD$~%)2-(=Cbk}UkycA|QF4cq=N?{;gfD6Zeuh#TDC2N+ruo(s{49$WY zCnYnW4tp{KG6U|yfYsd22jo+xT`Dkb88@rQlmnckqfW|^8}=jR-1|M6YM(*+=U4hwLMf)U#hVNol(10co0L9Tk4drrM!m5&gGK$5RyTq1kRF5Agcvwt8?AdEaWv)^dN#E)m}79DaGnaivS6ipuP@5 z(gfgv+-h!}+m5CwZC8p3F->>neCIh$nfLb_Mx7Le{@J79N}MYetx z`6Tfg2w3N(6FINn)4eS&#L)^ohjJhXrEH;E4?2sm-_`A#^=LVp?flYRT$%f0 z)G3KZ--*o2JsT>k^P{pEzx+!yM^3qQT_*B~&do;pTsI|jVNweK#w0iZ{B?9{cze3~ z7X7~uMUNmd_MzyfdWud{iWX)Q2pa-}DY}ZHpO;Y75OkIjGRVc^i0teTlBB>6#XNmXtAGosP`x^oxDeLioS~iufRy8-j@tZ zkr>!m7M0q)ZX0&n^b1kasiS0SK&jm6qU51)0Wx+#Os3?vds1bdmBMxeQrzP`xpYs; zI!dN-R*Iq|?H6fCiU2rPAZ|tNOJB3!?{ClEqK=elI928410*ELDfNX#oedi3*YjEh z=Vp<>OoC>fkq_aCKp-Nk90+{AS)*CqW{qaqcFlYuFg^7UMog91-+SHq$n!Kp*V|qI zs5+XaQ7M%rD7ftIhFrUwl3XBlepG86u%Fh3($_n>KN@jIFC6nbTvo=pt@r3!?6-)3GF ztSTKZVPwUwG)-**Cv&d?fjA!aEWCciPY&+($eFMyUdnwgjXq)~{ClzeVcHvAH0m>!!_d4vfqhcKyS;ckFEwk*@w^%#y$7`K0%-cK zexLTzeOkmwd$doPru!oKDfgd)dMU=oG~E+Jr~G>+gX*cZ2FSWt!Gng0sc_ z{b)#HzK0lXW)$WqX&EBuu51h0RS*1s;eqG8ooGh5@{uPHlADVrUDYi5Z!5=S`F5mq ze#+4hj_r_lBk#u3?Z$kFiKIT8F7HO(ji=jfrnu&AX%45>)<} zP7r|HOLt}-Dx$h3Di8~SWC&}+82#yDc9%v7E(Jlpo}Ou$7$Ir0ikzg$3Da|XdZrLO z0!DsqC>ig3AQJ5`#!rfiwwD;OzWA<{;Z-HPq$y4mrUTibVRB| zp0WVgM?YmjBaKqi^-ZVNPwEA3(6qF{f8N#157~bDzbhfPJqlVwi*(EuXr_Cl*HAY4 W!KF#LiABIZfE@r55%UCBy$S%3bHO$M literal 0 HcmV?d00001 diff --git a/Barotrauma/BarotraumaShared/Submarines/Berilia.sub b/Barotrauma/BarotraumaShared/Submarines/Berilia.sub index fc12f56270e52d7476dd7e34b245bc760e6da6a2..e7e878fc704a25975ae652334c510884d2d47d8f 100644 GIT binary patch delta 279448 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⩔xixA4x*A?f|(cUZQMg1XI_1ylBv4M2Dc@BV&1_!5r+l+D(moeNvoEqB5O zs6u?O!KL_g-(vukfmD>dF?ywc5~}N3u>MkY@F_l54;Fr3C;rZ-1{&UpYk;fO`KUxEf~!iZ@R#k-GPI&=Y$ z@%Zja6cZp5DjqG=@vrzpY&7!#^m`1meb1a%Nt%r$ublcn6)U~}Go2GR0*G~lNx zfX7)Ixf#^MetIHwW~_H*xTd0;kH7I;efvcl#AY5=t89XXnqJOc(11Q8?SIR6V`rxVUd?Zz}JLn zSuMDDfpq?QeSVv|B!>=v*j0dLw+;DW6zcW&IIDmfxJ_sjCO7Njot_uaW;@!xZ$}WE zI5#u*TT9ItuF&Ez>BNx(Itc7sQ+M?xtEw$<^)Ucy49PC~_Ud1!jg*a2Ms$Be4KZ~i zQsyGo5o?Yz%34;0B7e%!HZOj$7VkaqTfM~1bLx89T*#mp)QDz(PSy(FY5KT-^iHTf zbg@uJgf@+%!0%qMxdQ}qaq5jKKj{2=EVh89<}-r!Cq=L`H&7ezh?Xb87RvbaQ+=xQ z@0x&#LYr24<&p|w(Kg|X%k`1Y4#N3u#dc5Vxs4MJ_zPOLDFW$|*<8Rb2w&<4TC?0r z6Qu!X3>kah{z9XF=RKxnMuE5^@s(N1e|`5;S3*v7 zH&mqpBq|_CFw7VS;tCYA*;BnJvmqBkM6`T^~0BW5dqO4mrn?>|P!R$@x?hR?Hv z9|!c^1e7}Si<<%)q$QEDgF}<;vIt#Gfqs~V67)gefW7AwDgWrXIOS7)Cw5tQjQ~82cHo6U3(Yci4^F89t1cXDsb~52>(-M^DRZ4<}vy%%uZv zVEOc&CwtmF1kEIkIa0V_UIH}mvo&iacDfab+K-Xtm!ux&d<}8h!{ivILAUsvp z@8(yHJO(TWB>5Wyz7jrddUzdK1!9Bh*QyNC1Hh)ySpQ=mWyz6K(=cN-J@xvEeo$A* zhR%URnP&*|jvvGJKn`QLnX0NXD=W+eXs$>St+I+shaqWaRSUxQc1lTFa=Z7 zY)PcIN9t-x+qaq*#>Pxl(b?#ZPF@!7K;+LfG=AVx9fXx1%GyGI!i;ot-ax8wH#EMl z{>kv^f_(^YP>2 z{(e3dIC+O4tMo1woq_k(I_usO(f8eJ`dqnR>LGTE+VBoVlXYL2_)_eRC{mug)~$+v z9rrq|rJ&7cqG-OrI+QfrWRp2J?#uCm{PY=+G13Vugeg#Vd*GC){YzXI6+u{k_{P^hOV{db^#kF$>VQA;L$(=rxxl zD)Y&AP^EWqC~k6p_aEWH!|E}lB>J70;jnjurklE6lk`-peV4g={^q=40F=^ywnW%D z{0m*ykW>nXxvO_a8eG*Thpfd4*h~ik3D7m`%xV9a7G|xpv|d%7`zX z*L9@J?l|#MK#4eC^?Ou(nn=I<%L3%5mU)1&R7&x5uX$|#5MaI3_mV7sHQETtgR$=A zL5sKo!by2s?%~>e9~!k2ab~BMtr#*Y_70#S z_waoT0FYduOZrmE*ZZu0-ejU6b~|j1t-d*WP7ZJ|AJT>tE&=k^S1K=O36;k%ke9Yp zP?7fuNkBtdV1VK;Re+5)VQx^SE2A%<7bkg=QGS(#WxmgS46FJav@_HEFH=|9Y-6%VMYU5WK>R&oqqej_7)nf)hq8d&l-#0NUDT&OhW7c19SA65Q)YeaQL`)gKqsK1BHfHIwWwLI zFAn6$&I6fxJ#`1JmBhOFH-jC=yeQrh6f~V{{H_uOhBl{D8VDeM~=L>x>Mj-&I z0y!9dv&CoBAwPXXyp;Fa^-3ibcPtU%wBP6%o93BCSCivecWM!g+V|vf{1fNPpp-ec ztSMXCG(f7wN|DuG+2_lN`KzU93UE+vns(hAWbPzy;D675pd?~uTRNB*P?lUi>YVE^`SV9B z9mF)K*QR|Z@)Zksoh3_P-PjCDE89D z)&|#kc^afLyWYPe0CCuT!9X5vkZ(6oG(Vg$-B)D*D8*eQgZieZbHmxYE;mo2>z7s} zC~!i5lXTP#L!CBlf-{G77oSg>Y85L;Z$KXj_XDPK6+#^I^0o2VYz|E)fm5 zqd7z0F(Q1LY5z<&xB#7TCU*u5lItxUq>j^Y!@C!H+&Xr{{`a73upP8v7MuLA?f|(Y z$1Z}X9kTMXC|QSnPphJg^%C}3Q3onyb1c2z5(4@Eb)j)gXCT1ob1Tt_l=t)sl7q!0q4UD zq|VxSr@YE0tjq%SbRDobE3(*T6=d|AEo-A#R1n(To7MCgvwq9qIwS~58t&%+_wE&c zy8h_MJ77%Q8Q1h;`4r1~I5;<3<+D)KB-H3EuM49mr{1<60b1NgwM*DuAzdE)-qx|u zlcUo1&TUf>tYVB$UpWt#`t>p>IigB>4JiSG`MF(@))^Up2_&gWN2HH(z_B&c!{e8Y z6p^K;5Pn1D69oGRB}O>Lb5ON^ZX}YZpeKcyfjqK-lH;U*$rS=s5Zvp=%fuK|HQ`D);{n~VoUPDCOu@e=OA=+wPR#2i zn@R|#)3p$x9iQ#vK)Yc4F4cC?jQ>2;rCP*7la@_0uzJF{Np_l7eY$ivm!-@|y2b5_ zuQEQDFWgsgc^{DnU{f!hlmXEq!4?A2S^A*a3g6CttRnSGNLICfT!{lwb;!q1eA~4Q zxKb2O3vrYwdPeOS{~+A+hL_ANXEU$#3JlqtvBL&{)ji>|x%o~ecNo-FTLvf#vZRl- z@4o2qGz=9ToONc9DtffDdrJK z`Wl&*mSSb9WB+`ALgZ~o;5aK6EPWBMai*BPW$#Y;iRlCr^mf1}e#`WNJdRS_RY=IQ z?f=cXKe#B^u#K#-PYE3$VT6w?l5)c?ZP<*%6*NUQdZyj;0nj-_LPr9Q>a=R=rUsbz z@EM*84QRNEXd}2PA3$_DKgIyg{h1HQYfx}M@kY$e3%Y54e^@^)zLCG@v&nC_-tfid zkN2l5K`LEVkn+_WddABP3X___@I(J$UQXu5`7-GbVRsqCM1fs@0N_L}zXp(S3s1oN z+~vouol&>z`_2svn`iOrQ_2WeGM)|qjO73{G zvnd-Gz6y(fOaTj&56^>=SKI{Uzz)^7EoZ-qp}!~9mauZf9^}P4Xx@(KY;ce4;mwSI zm>Bv!M;rSC`q3*!ZgFxVP~VdxST$L-%s6Q?YscdK^NS!C3gMKvl1s002*E7Q<|#&Z zeq0Ze2zrl$LDZ9j3=s9I<2?Y|>{M7f)N$so`6JO#?JX+_wNy)71@mVN@gZtR=B z^7!1?_T@lI+7wW|a4+BYO!{54spfqF@{dErI$WL0w{#N{fOL>1B0y z**H3`<=qT<1Hph;xN(qa_U85@s$1!qzRQpP?-zg3cuJ)6{;iVYIZti7K(HVC`n)WE z95KE*V> ziw=UaRU8)~Gz}sYG>;7sT(PHba4jmn=JtMw2=x~WNS$E=ez}6IPYKrVYd|F0+xc8o zG|F@u$yIp!U|O^fiv_f+*bQ}3DUi&6LY)5qzu@X`^RA3XQ-iaV3x!}XCcq$YUJ3X| zwIISAa)%eb#&hf;rOV#O;J7rGh44bfMFbNlmZpd?=f^N z>_EByJZlJZd`);;t~ar6fj^%f@)-&WGZSg)aP0<-M6JO>^|SA9Eu%b&!aSBb+G;*p zdEQ$;sz@m90BDP>FhWa_uOAP8>7kXLGSxgA$URNO)7|tpyr1G|`w28YIGSL-^(wH~ z8oUmGxAG|Q#DTN$%$BCKe;APF{ouIBAHErm&oT^ptg#prWHS^&8wmVxQ1!!$hR{yt z3Ners7vxl+61n%^3{{&Fb^HWc=Uvf>14Yk|X~L|*weJl%V4O>D;!{k2_R)W=>K{et zvD_#SMbQspK@M7yB}C4!Bj+3he7)OMGmDujt8BXI_uf6n@QTmtz;E0?d)S0}!*w#6 zm`;4>q$3MSzYk|Btt5XFbF7eo)YZBO_kiT%aH~;Gag+!yheLCvJoS{eXgoQ0ukl_b zmT&b*rW2<=e9b6XSmOf`Q;wiNpS zTrx)94GgA6QH`@9cOHU6P+maZg_p>C2Z^}x5q-I!Nnr(W2H6vTayXeGo5QC%!k>Ip z4{2sh=mjRAoap{(*pI5binG4^*$W7DNT7kNBD4gU;S4`#YYZse3uU*1U0U`Kxp(gh zGlWAP6$%m&2<3||rLHF-LHapFFue^)wW+|@O^vnRdUEWuw(ROpPXtNv^IQ7M&OI*9 z->jFs{GV)1eaZ>2oH z0BUF_+SU3!h=VsTDCI!5TH^Q=MYgDWd2bS1U*jK`;)ow_Su}?vVj-9|@@>k&0sD|Z z+rnW4>YJ)qTL;zlHcfZ__0gF!x6@*%TTJ6uMDX-D`3fF?$m3H`8Jx4rdfZ6kmeW%! z_>NAHrQ=c$a&I&KJ=Zxh@ z%TIBVc;Le5R0$dQ$Dvmu9{Rv5HV~DVN$VKb5YqQlq%lB%A#hBlv{Jl<_Mt@uG{-nU zuBC~+DO^^66{IhpDAA^KYre{t`EPy(WrD+YUwQsrq_M$V>j6TEpm30av^fQBo4mneWx<8Xp z2tzM8$n9R`7>jMzBJbA2bVDjT8Va3frD}7$xJ~na$f*Zi_xe*v#NR%k5N*M`<@!4& zHK}J;J`Lts-0TxzP6b`gIG}<&RDNMMOc)WKbGK(VJueXj7drrepBkA0AIN>Rf5wFT zaRCaRXh?WK7so~%=th1gdlOv~s6fU*_*Taf=Yl)TzJr5jDI8;fT_70A3NRweFDpiS41jk;K4Z%~1t*=$St9`Q2!m!sAY1(P zZge@<=Z;(#;E_4j^c>~vbw(*XpEfeBSp!A8qv?12OOb zyP_`2ryMYc6cYHbM~E}To6>VNUqknyK}Jq9xalPgGYIria+a?n^}%P6l`h;)UCh>VQ2)|l%XFVtBj-2u_)@3nM8IeuSrf;OY-Y%I z3UJL@sV=icBi=LPKekFt=<@EY$fw;Y4xjwqYD4*MvaW<(wO9Y|Awu%BW=5_54+u7b ze1@AE;W6Wkk69WhgsUOtAeCOzHbxPDdU^g}1+QBO+qW@esQOZ`&;IQc^IqZdFafCd zzqr64l{h#{GrfJ!ngg=gkex1+f}?W!F|3*Bt}78(H;^!%QjTd@3q8Xkxq>gXv`Xnbp@1kTo@{UNYDA$x4kExS7v}hD`C@m_!b5Y4hY-qguiJ```c-$5 zw_lltOuu!1OtiFacu<}7R&WwH*gYuAnuyz_4H`j6w{*5!37uXgbhiC}r0DyiK|{?t zYrXpA)ei6?-7fj6%T+lREvGO;^aEcjSn6(#FVuk%frn7ZuiEHcAJL_iNsf66666O0 zlfj)zM=Kdwj{fvzSL)VWXV41@j$mI7yse+F?=@@Q`!z1ab!*F8e1E~lw-2Acl^wpj z4i}m&E9)wG!LB?07PG#8)=<<|{?qo|m_^xKWC3-Fg3%(a7vX~(CyhA_1&%Flog-8; zwJk&&Jo^oi{^H{$9cXEMfU*gWfyGXfiO65tW;obWs8A~{*KI%RbY2Z=P;0zNAA#MX zK_<9a*-D^S+%a7=bT+KY|FdRBQ^68IHz*kL7~mY`sh@}pP$JTQ*^Pm9(#IR1YywUGJ&Wy^X&Z^Y5n^DFhL|z6U z6RLZPT+C8`!lD{x`C`ZmGF`(U&@K` zGU0AZlCjOtJSZRjKia9q6I7IOoa7Uyhlc|6SBm7^{4`?V*trUNWD(}VFY^gekmj3d z#8@`+epmdqTgZ>P^l1;pS+sRt76-NRZah0P5^NWLgqT4EJ)UgnUa=m5E@CCj1Qy)* z?pLuPZU%ExP{AFfTf!vXgpU}oHg?|l%Uw*3az9Fy2^((HiIfI>_I~Xmn_bck>(L!q zSCv|owo*2IkRlRWAEE9{oN1%z?}nIds9U((LXCA%`0_ zd z*w2mrAo28^K~}^i+<%|vBcApY+D~HJe_NY#3FSPoE?e35adIuEZND1s>asFEO{n`E76+y|-^xMo#_C z!8N}Dk5_+a31t8mC_>S4B|x?1hNVhSYxsJY7`Fl>3mnN*%X5CvUVis2LD2f8P9TV1 zjE#Xb32;Q40evQ}BQF69xK}zc;k&he_=-E)tQlp;8_~CN#)vr1Ph9N*^Ju!}y~sWL zB45K!{P$Ox>Qbb=$lCZjeX9#vfgD@VzWDxVq0|d2@C)Z3A(ir-DD4y*^aLxS>-3VsUa;S3-*5iE(uW1<>!|o72|d=wT8snlxvc*&jX}?3iY=x zFVye2%gzFF)lG7wUg4o#$H_?m5TMYE=^MuDsd^)?Ut<|yQXxYlWRfUv z-dqq3tMi(cBy*g3939x@oOwYiNdf$(H0?kE!-nSkmI!`@gm_hyTXMY4;b-cqTZ<0H zVh!x06PIySqXcfiD$GXnNnc8T56010-~MY-r5MLMLdFOl>o8Qo8mxdmsM3H%I|p_w$<(>f>k@Z&#!%{D)rCwEXv35gPsL&^E8NqY-sQ zkIz3>7pLR#ch#P3v=4N9DR^2&lNi*3tueL|M}mY9uto7=_Xv_m1qkzhVqRm2epQ`l zp{o>Xq$N^S8za>@{mZS&eQXbn(Wh_FyD5EI$i5DD%Xnc(XWiu>gtk0S4>QyDFaVe6 zVY`z)IOCCx2H|{(E^?a{UyJy_?=vmSwtg`*(%X~%BsS6??4v5KAPFS5AX*m#YS1rP zd&_SZ%(t*qp3cRR9uC5P17X38=Hs8Ahz569Vx@o?dI(YeNXM^!=|v6?*(gP-50OS` zTJLIK@hg4BakHIStsQmL_RsBs=yNqsrJ9zwIHA{pM@wukuVnv$(V^(;UcGP|hB&n> zUS60L+Myrj27^Yjhm6BCr*CQ(biSPv_(!|1#NIG6`u`gm>njX@;hcuf+J62Y45l7H zegtfbey3&Ccm-TVz<0jW12#Y4GqZJvOcjSI%$tYbcLNAPpGz3HUWLim>%AS568Pg6 z=xjiOHCbuz(9#e99RO6R>J{DSGN2H1O|Ut-VyvPNc*7)qV0CEpXqCzBcceN-OK3_4 z!T%x>_;XOk%sB#oCpmA94RFI1=g+9{c1<6TbQssuLvN4*5uTmj^EH2Ym{oGn4%p~J zbHYHC?u(|0((8GG8|#tc<=SF0P!{r5*P0!sO@Yw$m$VfMR_@FAefL&J{6NE4iY1H@ z&DOr=hM1!hOvQM5*nppP%2^jA8 zcXht+tils8mi)h_`Bt?-A5~}^Gec^H{@0aWurSih=s#et&$%$9^!Swle_04Htu^*2 zZP+r=sPJ>x_t?4C(%`@{pZ@itR%#J)gxIUBQQ(pUP`8{Op(krSL8i$M-daY+?W z(AiYj9agKW_&ohS7i{ubel(3OYUs~6CC6qHxp7Ke8Y~FnT85%B$qCTT(_HM{R!`GB zjLQPAEpc5}z*kT*`9Xbsr4yeZ`h;!Z<3=dxR};>E`E2??;F_J!(<-5PJ(TAC|D*#t zn!WRS_66mLCnnbZ+1|A3H&>yt;EG!Y)fh`konCw--X5-&mHcSR4M{`a*VHv1z4OkI zpm5yWS;ch}Uv2F~@O9VQJtpkQqypD>A9SiLoE9`HGN5juOZ$7d#vznUfbDiXhibu3 zzS8}Fr#>SLGaTL$#{0f8{)LnE3`;ukc@J%M?bVJlc&?2m&b zRtZ!J91e?Ma${WskRfdH3t2AK0 zKePpyYf1|=)&5^m!$xbIySPPWjsQ;8eNC(>>+4`4o5qs#P+Jxh91=27x$3G9dLHe6 zUr^Ly|9e~k8QICaU-_i<{8h4QwA%fKr=Ao$4bTOY-T}e?g<>!Fby-+QXn3t_eIa6c zoAK6<#jj|!;^D;O337qT)Qo7GM!JVaSz@A_LBt*H#M5q-f?MH$tW`K=(K zij}`UG->teP*;*pvHp{HLFc!f*RKyhYO1$|IFiNHW7Oy@U94Rdm}5;f$S;rCDZVRF zFtGmQ)~^vQ;~)mqZChEl2r`kuq^UXFvLTRO+3K%BRn^=r!sjOmn6}>%h)@21H4*db zLj1wCCr_;cuv0JN>!Qi>`CWYe`d-L8Jd1;pNeiU013D9e(9)SDHAgaF>E=`T2|QM*$zT_*-i)sQp_>Ig%k8an&ujxpaRHX)&jtUNc&a0YI1F{eEr_5F;6jjkC z_3hjssT?46ZFXBfs1iO~8dG&3+t9E2fxlNxi&ulBGr%JqQh*berb(5mGnU;S7ymrf zYrSICY5L19R+J#4@TF(KbUd8wIZ1d6&+n;VcKdphKJ{L9yimZQxxs*c-$11~L=cE# ztxEpYjj8E$@rBR05^kW<*rgY_!VuK^q9xPHnHYg{<<1ZnyJY@MT`XKCA;2DLhl2w^ z3nCiC2%j2YYLNy;trz>m#9wq+s_vZuMA zmIzTqdmA@Cl?D74g~e-shq5Y9rZ*s4oODruQ31cSR7FnyZA1Tj?)ib0`T^}?1g-mn z@T&Tm4#e9Fs5Wr;WD~oxLB-h}@jkC^G#hD$-vKByECaKhHn`gZ<4Ha|@g|4Mxr2sa z0JP@?wQrz)fU^+c;JSjnl7PT}F6GO3yz3p9(X{_KN$H^b+Yfku^~S#i;Lg^K;qy%W z!W6UE-K(g1ZEBe%S^)zrNR?Hb;Iz0;9fDxwF^4FRVxWCl13`fsp9V4!XSyw12xosa zk-#;Pc#L_e^>P;ZZ&);ZulrrUYqxmWv}mLS1o~RvA%VE(At8F|k0ce>unkAs{|c6nKHY&{(!GT5fo<)6zzTZ@6Plri2LM z1>L@Umg3#8Uq$wxx#9=ugb5c07PuSXz+xFdeb|;CT+>kmK*W#a!RB%|J*D8h{=Bon zTSr@Ptfn(keq?=VTDt!i!9(7oGl70*!<7koc+lJ~p6pkDe$ET=p`^Q=DF3nbh;j+< zfcBuM$2I$+lU$0j)|9bsWk15a@r7<|zy0mf>>6nC?xCVp9HZBy%Z#caA7-u77`AOy zr<=QF-NaIFBJz_&fc83D|KZ5did(1yCu4Mf%oniD3&Kr7X8pl?XyN-Fx?St1u+59b zCH<`*i38GqQ48OhWIf)KrhR_ydp$db`SPDihPPUjz24@gIH(W#9+)v6C46>IC5G(-x3Gz+7W}W%OE^3E=ie2bG(*S|_lOetIA;3*ci*N`7X@zs21 zJDbv;Kc;t?O-&b&b-1J_oepvEq4(?cGrP7cvA|&Q1@)0DsvPN>CMq&SoW%t1TUVDl z@kE?|0jv30y!FNwv>x8apy|ZtbY)#wNYzQ97ylw*nMA!0uW$93$*rNxS!UKbgB14L=M5>U=hFui02^W zqVLRH#wW1iBOWOQHSUjnLz9aj>QfP#D;vLm+*(0b=`$=dMJ8UCKl7I z#i99f;drn>WOWm?s)fu$2rSM{z?x!DPZqgl9h;Lo-azq7(3KOS|7V)V8{U3z7JVml z8VG8h?bQ^`(Q9UGe4-J}sa`(^w`cXqPZ1=x@miD}SBImYo1%t+ioNVNmgGVGI(OZF z@o+T*(6nw-RbTw!`yQr~!@mh2u&mT*EhT^NYY1#YN99jC=tKF=Kw4(lrbz0}4N{fr zr$p<3$-L5%S~3Lk0+;fWVH8)-u#y5B^H*r>0r|i=i*t!AA9eEHSjsNgm+48T?5;A8+eKmd9*;451$Z^Z~iS z+!$R+RU;L7=&%PbjqG*pievvOL?__l)FdK!4d?0Sz)Q(!w-3&%w+2a~7S%C;QnvB9 zB*614AlMqz@{Z3wgREdWYwlYM`Y`O-wx4c?yz?t@)lyXAPH-yppEBUL+l>W(FZNKs zrS{NTK3vyAuT_mf>4@hA!Q6%9AjRed%_FhO?>;NhHnRsX9x~TjjV) zM;|UQg$@(wm-^NkC(#w%VQN~9v0e#AF#_DX1(q70?~nQD!ZA;jXz`Caz$J0Bt~9?R zOTE+9iF}_X2NBrBW2?Qq$rXKn+lO3n`J%j}UE~f9gD>qiyW4?YiXjmgV;5G?D>(lAxM zO|a`%Lfs0;P#JdQ2L>U#@Yj1XlY4ky-dJH{(e|FaGg~w+; z=Vq2)8<=FDU^Q>^ZGKA7IIY`R!1Pzv(OLN6=4k?_NgYihfX0^2ioF!H1x{P#(?(!E z>A1$0e3(J{{JIM-OkjdNW8Sk|`~Q~={ce;*yT{^IFH#f!+3x4qNW58=<&jL7e&NvP zDPbj+3%I@8BI^YpubH0!JwU?0e_9tjoQQ!M4!?PLptk}8^!t2R*ZOYu%WWNC%1l

s$H2K~LlP=M3*pTSXlWJ%|3rf{ZT+Q$)U&D^7Tm#m=%9pbzK`D$ zeU>3Jv(4b<5cV+ax%0QnJfrRJMsg#$MB2~AeHi7VIzULiC0ay}6Au@Be`G>ND|ZRb z;Q0tZw(#xIZo#)W!7|Lf3^Xr*O<0z8!!cdTP$&Z13 zVlBYlq&^@_1ta;&4W*?mU;LIQlIwdQ?=IipX<=x4*dGwvQ?V6RSbZp(Ado}&$z_1Q z%YdT%Ye#P5OTzyen`XZyf6A}K@7MG7a$!VEma|)_NW|{v?O<8lqU7D%(mjoQmF*kk zQ!W7~8c6fyYDan4<(CJu<3uFbamKsWwrmhbmF8~S@$<<4sKwb!nugPcT`HD`8o?{< z-F^Xqi%V<#Qu=v2MOL%e=unvV&;3cvPAlj);y)fp;E!7&F>(^@e|1B9Md2RibkW>+ zuhSxeRA$rPogBTM)w!}>7792a0ooV^fM{MX^7lcKA;#Tn{0u~9yvYH73&#WX@z*{B zx-(D|#@XB<*`uLIyNCqxusCbx^PlJz=#Mh&Zkfbgx+{S9yWb}|PlF%%bR;j}wP;4n z-95$O6Y4iN>F*!if8-6+#t3R!Rz~T7`K>cBr`(JCUT3Aue=L)9#GY z0Jk^pyZ%YR593=v>fylHfGi{T16gE3D~GNgQR~uPZT-RpQ99Cow*3kAyp@0fu?3`U z+~nOjYHtUqZv@lIo&x2N95yI*kw%AB_{f5e!(f%Q8}kL-Lj5MLErlfSjQ#qk8dU1}8!)H=uJ2WZJOLeD*PA)@WT z`Zwhk@7y6Crw_*MTt2UtghyRDo!0Z)0JVAO>ie>LbV@~lJR|Pga2PdK*MJzOmBI29 z=Y>>q2Al^Lq0X9o=Q}XXam@UGO-j4@e-=xa^kZoh{Yi0e!Cf7QZbd70 zpI}=otb-}J_F$Uxku2cswD=w8z%9$Pur6`=AZ`iL-PZK#omD7GzSMr~h?;zuht+|s zhoW|L*1hQ+l`3TZjKp3!oH)Txjira**Vj}&zdw5;}M{M0@^NI-hc1F*Z z@UM1fe_tq))2@R3nMm8VKY|}6s(c2r?uUc zf3&>1YKZ8r_5!I_vjE~5#i_=8^I z?31e=GPwS5ezWY!&&#{RZ-Pht)ldM)e>E*f8`M%%Kg(5HI z*PSc1=J0x;jIL6+-glG6$4~xXB4i#B0p!Lh`t6;o;!fBVR|dW4(fol-uu0(86K6If zG#4GI&r7;cBg%#+_*A7W$B&q8q@Gr!g{8sk9e7U0rWY~u!!twKnrN$YEMibCf0g4> zA)u^v^wWfBt)9csEHS4q_xGAm80s_5KTLuic=#9&QdSr!`z^2e*)DMXRU#){s$QbO zBAdftw7AIzjc;5k#>3M#OIV9S9q>Zj2W=8SMB?zHXA}`qpb~@odjA#OlRZYl3Z`d* z;XvDs*0ig%JC1_NoefA8q+AY%e}ozB^#4kjyD&Zi@tQKI29Z_xX`56`usloTdT?0z z!R>Z87_aV9Sp)JS-^gS&AW+gyomgpM^0OQd{SYyvyT4nf4xQux{bMntZV$JXYC!sv-L*=SGWz3TK@_duYjjche|tp17H?oX?eeg< z<>jC5Gq=@}fWY-{aVTt@T}~$tmVU{3*Z-+q0kXRX~0ghf6GyOZBFs;l6d3M0XFB+$C;u(}Q% zfn&XOnZlil+xv$)f1L!7ypZQoBpq3!6Hswn!Rk_GDWh_pk-;O}AbbdKWVk=_9!j7s zeKjFyte_`}c2BuDFYqK>B^!uezaGD~stWxa&M++AUp=cpq~+c`CsxLuNxnduFaw>t zi;1{BL~Iiu8O;1vK|2?}?IZa(b{cjY`T7K+I&J_cd6x?He{1#8bJzbBI~wH(@s^h< z)xV>nd>UdihAej#oI=_Bt2m_C@fS*jSC?~5Rl(f#QMFfAXD;B`Bhc9e8eqxwwJ>=7 zu(3L5B=qtPx{t!I&#Ev}ewd*O$BEkr5bO>L!FX5A)QNmkOr{vJyt6HV^9iOJK_Bd* z=utIh=ys3Oe=wsovSMK$SPw;)U!>2O-$a5i^IDuP0k`(BO&735D4&cuBC?zts{#xl zsVD!@pqIalD8(nEb~~Ud48o~)w$y+jWyD`)57KLQwD=r`C*X(@QBzXw^#l=|?qJp9 z{bFEPTi!3hFpmHn;c;8?z$Mb>ss+|OY}!6c@UfI@)e@wKw6lv2ETvL1_L zJWXMl`E7;TS{L-N-yuF)0(>UtIn8*OdhP^+e*!bX4j(>7NTdanxD>vC;6BrB)}Q=l zx6rf6TO1s}3s*h_J~XK{S-2YWKu=kQ{5Pb{RG(xXLXwaNU;1jhpTldgvnkqK#1E<$&8&XD8Q@P~(f2|tjCVOB0i7QfTC=+ZAVL__76n0T=|%p4RhnRe}`ax z+$%>EMzas0S|PzuYqVoiJFT|s1FTG(zxHJ);HQWuB7Mgrn^f{3uwW$M$_h4+@M|K@ z3hfB_-B%U`Qe*ygxar;AN2%I)R3A(OP&x4SAe$Mo)7YHB0vlW2q|xl&x=yJtgP~E- zfx2bvJ$D5VGRW3_{nrZbj#YhbjCGx6rPF5{c`l<#dR;&gEM*s`4_ij8Y)d8pZ zrW1ERO#5XFQk>T%H;35#PHw`{O)NigusJ`^+OwQ?SZ17Vwqoj}p2ya><_XIJ_Ejph z-}_$R43J;LF=$R<)UkdOKbBSE5#G!EqV1L@R5;`44-T+VC^mFk_YrAve_3r!8O0p5 z0~`ERDPtU*EYtZb|M3Q;1Gnyc3mAdMekP)2R8eCts21*xBz3`3#zmX zXb5!)mD@=eREbYmiN6CHe+8YuJA-R17389ofshua{0)OU94cR$o{oduN~)PxV9HJahZ;O&I?I7LG(tG!o>qk!=v@8}cr8%l`Hd6n(-n8Xgj z#cN$@IGJ{J5Vqf@939!U7{h(6S<8X9I0EoRU41UPwYNBo=5j=8e|tS7Enh*bVIV~- z(`$02DuhQqB>Nx#1pm9(mlM0d&BFzB=8oMn113YbqKm$4Gtfs~m7w&J0qoKeC|=nD z6l+XV__|MB=B$thCZxy0br2+wdlSj-q9_mpfyo%6k}MJ&`ZEQiNM0(z950CbhS(Hs7!4hzO(U<8&JA>6s2ISKc zmQEz}y05{IAet`=L1(7MwHlB!Ayb7eue`$330viBM>hybhY0i!p39`Qkxkpz(@&gf zssBe&eev~EMGb3)$;W%0LGdeyR{=RMF1b|W`u+s3hPfk;f3IxXndTP2m_X&0f#2s^ zAo^XEK=~WW=hFrTx~%iJ|Jcg|EG8uXR(=*n_F$udiVd!3bkvtT(gAZ~j1IlgTRh;O z>`ZJ&fz?o;rFj3gt6F_Di3CxqmJiCfj?^MiT6Fn==hoB517I~FYC+BJ_$)c*040;~o%^#|j868lx0ww+w zo)WrzRa~E&RjVcRUg)cygA5c$u=&)C@H487k8i!8o%A&xw+-GMY!Nn^>TND)2pDVsp|VGKb5 ze#0}>JMeoTduJF|&CynUS96Od+b7R_0xzaIe+x(Pnt?}tX4>`B7vu}_{~$N$KF4yJ{yKtTsa7AC#LA;i0fs2a~Z=WAkUMX$O4K0kosH30kX7eM&U)~6#3&Y{` ze=nz!UaEGY;QQ4STh-@7!2%u5`eBqhj2l%i)fCbGXp-bSX6LAPp|ut!oSQ>w0||i; z1HZ9;0;ULqP>CmVO`$%{2%GoQUGWtA7LJ}tvqc?-z{w8duA6u}JkQDG~3k>>ppe=oDScSSQmYpC2+;YAIxDmk51_Y_TjDrd>- zdo;U?psK@{01tfT-U|Mo<#7;6fUYV+jj7zl3aZziYpZ||I~~5Ifn-9Iuy@^+U&6XF zZ)oN{y!Pe+C~UPYM8I252sydDvo$b;ogBT2h`I$>7=)y04@>R>|QTxo=XQfCizhJMef7(OhU*WdrAbEBkULduGjL06dNl-jggD#Wx=GN&ABk6SOuB<3O`1s|E zk-KedQ1&j*M7RM(fC^iJpQs4np7=h&^X5?e@yvb{`H80 z@1f*MedhuL936tIP_vWpWpkOX{JP;$?tz&1L}R_6JYVHmO~Duc5M8sDi&$OC30i2F z+evW=kqV)7ZnmvAtj`wuyV$hz*sP(eMZ1d93XK{}D=rWx_+gxSbor@wg7W)i3=Kd3 zk`ak%F-LM{eTl)AyNMsve{VrEN7%9#Xv&QCR$h+Bm!|RBjJ($qS=uHOkLzpGkDj$U zITvwqrf}25lIHGIW_6HSk;CY^4V_S5267|dY|64||neUm!CD6(m@e?H#tg_N0y> zQ#!Of7ZMTNze3Y%h<+S$62wj`G~)I|^6o1iLm4p$FL!LDi7mPFh*r#to@l;Hmqc#U?nYZ*a8k3xT8_PzkFSOi$TQ{qcjv7PG9`r@&7oLWvw0 zF~{aMW#C3^(lY@af1~00Bs3jCL`09|vJIV#9@IX0n%l{}Kgb};lB>_VMBTx!c<}{K z4ywG~J{tQ=8^{dg)A8gK6gT^mOOWPbW=`St>fC#(Ssg!-MJi@qOl(TnrJek*ktl@_> zbMs|^@q5>te-h{KsQBsbPg5@v%G-zOBoAZYs&fyRbMkhSo7Wa8E8v4a&{zNwnsvbP zU|I?y4Jl++-$RUH8N^~-_uk)EJk4j2FB!tEAh~F>p3jlMs0Bh8P(qW+7)-7oAW}Or zv2%NH_zfE`%A{+@xC)NRHtCWT)mLrUxA9lC%3xZ=f1;BexxAck`I`J;UyaodpDljf z%Iwu`X@^4lDkos4egk&QhN-k9oUQJpL~UgB){F#(@f*QQ&mmnOG$*&f8d4_Rj`B-^ zzGoj7MaUFGmx{WDbZ)c{ihT|FtI#8mNyWIb9=nNKBwc?;PaG?kRtT22rw6N7f?s*^ zLrO+_bP}j%1zPEaT%7kb57PXf1%ohNh=_gmoC{73nnh`bf~t-CNIatWe^QqgI4fBNi}lLe#W!|=GNm9}BrCBV^D{<@FJJ}6O(

vS3LERC%o}k|1Sz!W<+}yAWT_Z`S45dI9uY#pqm9&5iL`uqyPU(-fh;h z7)x3Ne~EeiC_)&dq5G+n;{%IPUylG7e~iU(Zg+}7%bHArVthz!01h{&sagiI09C9@ z_4iXn-i4R+`g*f-_5_jrm{XYgN1mV-2`9(t`Y$1kziA1OV9p?O?6r|pFoxm+>4eH& zB&&?xLLi+uJe(qlyx1JeTvR{4-&#ht*A!Elex2W)^MEO{Y9;6>Jw5%6q2v*+e@OEH zt@2ou27S1BH-xeMeB&WVI=6f2ZLN(jF2Xz@PeU(n+22|bGv%9g7HU#s2diKWf8St1 zI2GXFvILImx3F1a{M79{BHwl81CDPNCMcZ@oT&h+5k21Az1lHQ{r`Z1Y)A_2+)YrB zxh$SE{&xef1rC)TqJvn91+)0If4mKmP|N72VsUewlIuKuHv=XKCeU{skiTdjX}N2q zq8N~Rm08P2Z^_P;A-g8qs#c8HO*C_j2xaDAnP;0>T?Gn6n|CZ=FC3qP|MDF&&kt*t z9q_W}5cI|f*-K?_f|=a;I0eY4WG<65l=tgil}~PrPTIK+Z^bb`3LA31f0jt0+H`!P zv@}_P0TV$5_i$34pED#sivJ7Bg!{qJ*&Q%&xk}b~k1tFpt`~gO?3`RlYJtkR!Hd^O zzRVhWoG9-~OKod2qHc{iq`)P1>%Iyet?M)kh@bcYQCw~wJ?>%y{#$08Tsl8}PEh_D%3zTB=pje=Ot$;>vSN!)zk$EL7*JSZ47=5Jg<~u4)Xi!|3q7AMAQqvZTgjgvRv&)QR3xxjLwXlM2W)fg z?|Hmqr22IlTEN%+Hz#vY@tOtuF`Xs)^c^lgnvy-hK7X}d-Ti~N5KP2QVP^|~>+u*k zLMe{acd@Te7)CC7cptzk1OqS}^SAhE@!12%- zoPH=u1!dz5EEdpZ`OF!nu>%!^t(!Bc;8q4f;nDbZe!*$_=pgiYM7gynMR#^rN1zw9 z0Arni(0>HG<0NVviJ__R3x$pE5BpYDi+bO}P6#l{D$28>C*OvnC5b^DBF5{Q5$gR| z&ugZ>L$v_O@&EJqqxJveZ+mW!d+I07NiikF4!7TnMAY=|@P>{)TT}b8OKj%dDT&|3 z=FLv;y*xgeVGrrD$|33b5>*jW6n#)+k0uUteSgE`C$JwY-*0~`z`34?SnFp_);GcC zfG)r~`?h9#HbMs05h>}%Z(_s7wew%#`vI+GYgeuXhMnP;Ji9~pN91`Y5$1VOLn|3C zKG_tJcBpah(q+C-eouS(l-ftZNsrqk7dxFwlM9L63VQQ+2@r!a)ZL z*?+cmf)aNx5ldj4JaNM8qV@ciu4az!%7|(euw!gX65??ojykL<U_%4>D4oknD3NbP8m* zdz95?+Adf|)k4#__5JY*x96R$bTpo>eXlp`9t>DjO6A{#gag6qF9Q93abPL#I)CUC zv&dx%S_S$-aaVmjh+LR|fNC>8`&5Oi`7$4P*1vg@y| z!n79xriwod^d7fR-dAKgW25mN5qse5y6Bu7Vpq>pb}#|?jZEuQGk^M87Kt=fc)kSY zrQtO1AE5J&ecg++a-&~{VWoNs%YVN4+Eh7u>4GNYAg{`j`x*TDH=C`B@C$`>t}2vG zt}P`P4?dz7fbtjBdk3U>!-;BW5ryMP=*US}-SRR}J}b|=E(3V$2QMehaktUkvw~Y^ zlH_vo)O^9d1C^{~Ei018I+*@R%d#r1D@4)XnqW>8w-T$Z+9Q8K_$ea&?|(JWUD=W5 zyU=X)U3NRgkn;L#XhOejyPDwpqSaI1#OP(mm4e2{sbvt7)99Ez+&aU~fG~XG&Gj1O zx_Y4b4Dy<&Z`1f3+tXg+)iicIn6uyu7}Lj5mwaX=&;p6$gVCJm-)~Ta>-mvDuL;Yh zlHLzZMMsp06V&n}ge%s$)_*P9eP}>)tZ7WkGx;193`-5Mh96T8eI~SLyl!uN(RvM& z#}T-Ttk&mpKSeA{f|K7;_-TlJ-sSAK5ql!0RNjY1p9DzcH65%8?JrJq6v36Qt8#@Q z7@&_SQV}lp?+}<|L0}(3PdjXcGw{uLckE=5ByMBd(J$r0=RZN)eSa{@1cJ(9&y5uV zD|jT4>XzVY`lr?8`|vCuQL9iW{M;64Z$Lc7SrYXUZR$4*C^>YvWs+Y(@RyT6eecU4 z`gkgZ|9TY{<3#9Z7F5Ck4)A;&ABitCH9D5pD=fQ-u^vd5N^!0O?cb4zUzq#b7d2=; zVsP^UL{;B+-DQY$zkgXEkN_qc_PiqkNZ}+>t@dM^vStawSVCIbr3~+2+oVnZhQ7$ z8uCe88H^?5$BCQAUo}o1 zI^+G}s3U`PsDu*nT2(hbC$M5pnrFp!-L9Io1Q;F>PHFxv*i4VhYsfPt>@00Bhd0f7gIv~Vs zvIAs7@YlV&upVjjH3nKz!2nyBUA1U{tKJG)B8BCHY;b@*g8Hs5z)Q05PGQvB+!%mk zMTMF8!!@O~+-si%(wMs6y2d4qyVw?EkL@EFuGI)eK0@8&r5_?)7V^RIAt(Z9Qb|{$>^+!#-~9 zA?vYoOg4Y@LXm`rh5#gi@8BLNfsNw6L5FRJ`$p(==&sZ{juMaqr>z4GtI`v5wQ##Y ze`5W?eyA94?}(Lp!3ECOOcCXo0xReRU_^P@5PwvTbRme}je}2W%W0s+Ewg9l#ypIu z{pAOeauv=9BDX9L!>H{(lI0q{I>-$gwm`lUiv47CzQ6wXMqdc;ToRB-L^h)bKZt(0 z&h3D>b2!T7_ve7+TA3W=dWqMTf7R_tAons24~96q!5v4m8|jO*NwaE^0>5~f?Due5 z=YM+6Rbfs5dJ&ym-d>uM$KeF0AA!r*a16^EYbpU>L>604^)PafZ&|ksbiWP2^%j9u ziVM{4_ryM|(U#jv$C!Qn<&*Ov!@%5~ml5|D?a8B(WSXZpt^y{HDZwmm&>X}IkfRS* zee1s^dc3jk@kJGI`>IiNK?{j42+UtXJb$wZr}Drgzwe=;HZYF_mFz`tJtEChEF?w* ztPBSJdEMpcBOV#0@#{hhwyeMOXHYt2uxC>ra`{cfYKP^gSGx!sx?4~k<$f{Xjy$v= zLR4mSX!}O8v=S)B_J8d7Ie3YaepS^iOGNdp>c(ali|PAPNh*kaAd}f-xJqd3lz(gh z_Ma~h>+Wn{>{JtE8|WZ+!ZEKzzRO13Cp&|o_EYGh-+$&kTVL17SR{Uep%DU2*N9OK zIM)&y!Z`^VKLx~nztmx8j#B|G@LOW1b&zxb>{~{XzoJ59qJ~-8Pz5E1SS|M+KI+}= zpeqw%78wzT7i&XbT$7QJYZ6TIjem#)ku!iOYPP(@1t-K3n2ocmF4_MdzIAxr^y3Vi z_R4I_rYiRoziRH!{u0~JxluI`w7Yp?(?quhaScExJp6Hri9Dh?FzgH9@ z*NQc{zT*7=la{}h7ozMo1MUDozbmDazV|5L!Z%RmWQ*6kP!||37oSU4YtZ!rF16R& zdA;i7I7*NaP4Sgpl|wSZgF{)w`opguxtq?fw<$f#QKe-^saD?tI)uEs15mi(D@sEE znQGi(uQ`Oz#J@_1i9*mFUwq=9W}Sv?k8k0tS!O^SP9jn456{ARO+ z4o?a?QAqu$t>*a92nu>)L&^XE0=wA0VBB!=BJyGJlX0@IEm-MSPRu;seg?;OTD2ds zEB79jqbix#*RtF{aOIA#*l(lx2x~E~8#5ZmXFlFFyVCY3?<~3sFMq9E`@==P0;SAX zC+E^Q(k6aK567-1fR}eI2FDpb;}x=s&RqngRPxV`^me+nih=Eq<8jVIk>&ot=Y0Oa zFaaT?3ezT^Vo)WO7RP}CADn2mEtql!R4oZu=!6_oMGm*Q`NNrUGHEDLWJdJf%_)1W z-PklauOL~HR%aF^Pk#w~pXlR&IeLd^@|O3>1coa7K~g;vOq%nN#DAJpY{XF?$~3Fc z_9^QS`xrwKeF_tUht4zJgFy}B%SRknvGgP6XZaq}y6s>Vs@Kk3!ij28!7oD}_^(@G zu8wmF<}(bg%QfFlA~xrQ4Jv9Z69VWV%PcCleW`jnl^_UKtmA7EeiBkgpYc_qi9~U z+6eW5Z&||zJ>zI1ARM6EO7;i6C^vz>g%$W!;j3kHBM*)a|Ayq;VaQq zy9>aH>K}`zHunP`X^aA_VylFz2#-W%60<#lhE-c#Bdt5a% zvwQjPvcN zhV3(kE!5^^`+8nv@Y2s8Z7_M>hsZhkj(qE$YJ6hRMO3}(0<{G3TP>=bzI#U$I971x zJ+FK-3K2k7>{ODspVl2I8Vy&4;r170s9!&SC;bUO(Qo7eo(0lJi(ubhQ53HWOzz+g z^i}EeL4SfPP`BV&o=VO6bpLJHR69J-!1-F~p9RfYwAYze`2!}v%M?k1%JSqQ;44%2 z6s0*2!NKmG=(!4+qyVbF-tj7(%J_HwwR)5xtHm3CLQ!g)WcY~NTGGtQDEfAaBm$tY zV+6C+K?Oa(%Qv*1OXrnnQxjew+@BM=VsU;!-hb>Si)%+p_;38pThN@R_56-BzuPUY z2({te5H1?m0coEI=co)8zkR?WG9#YoO5qK__?J7{Q$PKak~$j8L49pTv^A{$tPP)@ z&1~s-Aym=6&LWEucN5sFnN}SwEmo=>J6#W4IsEnDqu>8incSO{>R+VZBVcFQvR0IW zwtq6NFV==&FVi+WW9K-U08oL82q4D3Bqs8GSpt6orCiAKz(LMG%C%-<1Ru);js?`l z%6J0hcu+5k15PjD=b|@JG^F?f`{`>*9v2=h(T|HukVq-6)>QXW6dhVF#Au5BabS1H zvNqW(;f?75uybNK{DJ9^D$UF^^qT!e0)KOj!qOV{mT*A>>TLhJH?s?hqbxixlc#Kn z@wuR~=rNfuAQU@iQY#A6bCP~2wkjmR6Z|kR54uHb__dPHRA7Fxn{|$D9yF4(dg;=( zv$rw+Oz$V|t=Jid5FP3}9^%y0w8O*gUSXIV#dMp8in2ReTTnZhOQPJew7!=s!hiDK zN=YI)n(yF??%}N6m4gG3@V5Cw!+<>MkU$!|zB`JwI|>fleNJ%U!v)0T!(Dc&)d;$k z2EpH^kb}sxgM^#bJB!ob4a`_HAB(YDYteQZ){`+`3DK5-(~HZAJYa{uUrnmqK+An^ z*e=|cy+4J|9rt5C6#DaM6jLmqmVY@#g`mv`+dW+UsJ>s$88FxfzjZOJHEvHlo+Z#) zowF+r4Bw7axj&$N#+@26@C4MOpw2&V`8rz(mX6zfvtI`~Y*~HwhUY)izuG@e2^GVcnp4uKvP4C=ekDKe_v3*sG4g9#!U<7FAv6%_80+6N43e(LFIT>eO0JH58%cIx?w>8Ziqft{Pd|a z(C)mJI~m;#_+uQ%Gx7oiAa6qSyKPs5XdU95h9IjO(0LWVxO?KqO@A{ZO!5PG;FM$J zEA*q(v&fdWN{frBedFN=&Z!dn4yGX`&vn@4@%a za#=<=#@{kQ^xqk`oI|)%+0^AOxv~RyWMK-cW`Pj%Ve2k#>)_71OOL`lfeHw$& z{(Vw!NM5mqtcn`+b>^%}5_PC{@Ik@%(LH5U?&B#AM3qSQ(sXvLSz+A+n<)`y2gp8m z4GfB;o|d;&bD+klJ}dM>dbtp;u|GmUYc&7QTeFhL{NMj^QTg?g^NXC}>`pn*tQSD%CF%P!( z>;D<_7uSNE1LWZVbgt`HSl!=I0R8F{v5o98+X-d)nf~?i#4$!?vkkS8L*xhbO8I%i$Zx)KZ`Hi>p z_JYQJWPd^^8^?OlP>R5PB*?;s`ZThsvsAOQ96()KIefq{%xO2l2}cuKSel4w=)I`liFmpwVTSz`u2q zH$B_Ro+U4oP$}m1#ZS;!0G%jQvJWx`zAB=N{R_htXVw7mQSG7y0Ce>9jqHfuLh11K zrcJyl4GcQN#mNCDr}JBLeJN*2)sgHt{F`+kNT$eJ_kL^>$R4@ zSAPn<80hf~6ykteNn1ZVvnFGdur6qUFk~tO{cfc_ICn z@$X|R5dW+15F&iK1h&lOFy>-B5vm!$%4rqRE0Jy-PT}>KaTjD(a@Pw`K(;{opX9HB z0Gse);V;-gDM#RtW$9n`oxK$#C+}YchJP#i7XKgKI1o*CeXGJX2|4(lXzKR{TH44g70$ya&`2crzh zK$8JbrydFL)o7#9@=&QH9DtK8h3`~Wa+95#p})tMR+|ZSBZCuc0BL#fB+(6X9@e;d z47Hm)<7!laWBA%)$~bY4Jt5$0Ge_syeuY44F{x8 zACx*bajL(xYvY2MGU9LMkmT?Fg5Eq5v-?PiOVbkHuy>%q?y!xyRzmb@=YbIjG1?D* z_T~~4A*5k9Sb*583EtFs1Ai=kn+pA<^e;&vy@T*A0YGF2`Dr>7Jg9T&cuvA}u;4eC z6wiS@4rdbZ_>(FQQ$Mgb5IJ0Zq2IvElqoAHEC zO`Qw!KDl_0xOwj*L@~t*n5k<=aZW&IC(b77fshEIu$4&w44bY<8Gj$UlN+=0n(_94 z!v7yNXu0#LFbMZCXpq*s)_zLw)e!dq!;~ugUUXxiQvNz3;Ksbd7i$L4o5P@yG-xh_ z@2?63Gn}|{3|BfZ{!~}ycanr5gMbmQ2f^@XEnd}aO5vup2NnS$%leZ8Z*KqT*wJ-V z&dsowFgfhthpfE`Z-3C!wu$Jns!}TA&Xc@C`;_77uZ0OOykKt7*!J`98hLp%?kBR@ zKw4W-jR1dn32)2&_7&cfun?hR_c|AD<5v&xLi{(YY@^8>Gldk)*|c0x3814ml2CT$ z-+~G!F$jG=uVXR_$iaK~b*W0+p!9@q?^J^hI%r|0=ir-bd4In_MBgb5s3?1QEOX`k z!`WAEfPH0&9;AQL1N6W-Kyh@MeM;l%N^FAwzbo;SnrX_6F`(gH;*O35!j$~Q86Y$m zErtk&3`S-8KD5-B9m{6ms(sPbBFbA|TeXDmmtusRk`>vCan12}qtJ+=E0hc3IiII7Sl^eu8 zPKUTv_n_(px!skl-U17>IzIkq(SlWcIllt>i2jJLEB12dn<^4R2dM1>MD|Ez9v(DA z;}pJrA$`o#5{WosdcmR-9(Y?{G)-GE0VOGP=C8~Pd~P#IB>Mfs-o>^}W~nUZJ& z-`~6@TYsDiKZ>hy2c&D~?(07H>+4MO;}v={RjN#b#Z9K%_qE>mbOhbYaS#|6H0~T{ z2sB#B*zbk$Lj>?^uB)`!F`A(zJjJMel-p<-}(JKqzEH2U>6gp`@@G*T+4_4A7;E>KDRR*6p(BBvXcTdd zboQy)PH3aYNCISbeB@xPaR_qoiygZ2q+cfv1~5Nkqa&t2tKGitVxOU zEZtBoF-+LsyaEY|f4=@40)WO&3rLxcxPKL@?;glAEEw?NL_K7)mcR8y+(Gp?b&Ku1 zKgD42;3Q7z<;{Z0Aa<%uRD?0S4VomxS6*~f4?u|_4eXW~-|mx=%<~zjTuV@OQk?!s z-Ah!px=F-gD0{~j8WZ@OVvL0W%H8!~wK4_}xBNm%U;U>9;Y~k^TJt+()-I5`8-MYm ztiTu_4~)61etX?$x&x=M%adyL&tRg&nMt>zbbd(ehQHSr)(NY{YwbDN$>~q<;xf^v z7<%d2tQfA|X2O9(SD7X5XawB4Zo+9d_{p9&0Gp#J^M4{nUoEh0?t{tOVlH)IwZZobyo_r#sp%&=5C^Ll z^F;w&e(e`35aa%gL`Z)%(7wN0%!(XE`8a-(0HaoAF#W@lE8ASdJr^K+C|~03oM)a! z+uhF~8)DJG@vST30ef@mF!)4|k#1q;BsH{(2QXuv@rK=MLHECm@ zayNrRp@RpM4UNq`#5su;_yVSF%cMt%pLgH{>JOw&IQ8J+>(?hCus@JF<8?Ax=|zCB z7E%XI*xF0TPrpar9e;W{&q*g2W!zR-GIX*cfV*u7Q_Dt%auJMyjYEw@Vcs6$(?1)K zQMgvDeA%2B8`7Ouj(qDFXJ<~G0g~PgAPp2O5by@L9ND&0v%YhITHIki&U=sQ{w9E` ztW&&;zIj^e{`N{-slbawK+XbJjTc%b7OM&quU7E<1a4z?+JAKQ**H}gujaG{8?u%s z@P6qc(rTYu%+=RJc_pIx>YC=@=W^H5&nU|{0o4&UQ1BDbhPz5_Roz6*IwU&weZ z_GbW9()0@yG2p5U_L~~ETse{Uc3`s457^y6KnY8H+=C}qtgBRL`KK%jCE7bE2<3fSOL&>>#HuA>KJZ@wk7 zr9iOGTz`3Fnxt*|YBC?^v8VGTe$ze&VlWM=Es}OZq|ih3a@%-SMPyQXp z*9rVkIg(jOLVK&1wl7u_)NSAd^ew*`gFw0+k7o6*zHn;X-5B=1po9I)jbm-lJCE3O6^Z#Twv8{t8go_ z76Vp6_iO{1zrKk7HjD8cg4jD*GOV|##((S|Sn;-NI&W${SV|QUd0{Vh8p$rTbotlI zEQ^SIVM*WMTII9AD|O!_Wdhke;Q=s6bl=wWbst$!O`1=CP&zn`N;v?|6(}SQKT=g}Au>8{F&U8_4*@(w!}dF=t%lK5>=^jSd0qf0o0YqGgJ$@&}sM-RB`_#o#T@Jw|?)HnzsB{e@I~ zCEQm<46l8-&11lShLnJ=NyPP1Fwnw}re9UkIcNkx^R(BneLIF+C5R!;^b4FM9+-97 z+Ts&CcxM;@QUG=o{D*@-BPmKdGJl^hU72f}Wy~*-W?;jM=0#OLT6KJZWg$;S9j+ql zRn&sdLIV+$<;LGR{NeQR|HS%pyrMNGPsu!as4^tn@`s!iZgn2P)Qta7RE^a_SN5gT z;x8{2q@=a|0x@qf{^opl0uj_hjo<^e+qNiL-gR0St8ePZXVz*<#tzO^Rez527$?;) zi@IV*y?bQNKX3g9N8YLZM%TAFtM4O0amjb4GSyXS`~W#X#=q&sz#R~D7j$2UFMI+8 z#)7EXW20oY+9BKDCi3N1w!Dq=k2miW@di?+-2LxX(%(3_?20Ez?BaH{I^WzRhg>ZIM1BT zpoKUUR3Fgu&NiR4pDPBXwc)RRb4syDmej%t6lJ2@MLwkhHS(HU$y*S51ceKcIDp}% zu~=R-La_Se2&|$F_>{mq&}Hy%NYKlC*_sPiyLl?z?pap;?VLpSA+RIF056BjE3!B>8C@WK%bFc*3uX000nt|s=Z)r4AJs|KmmUY4dziIpDdB! z$6ewW8%}G@+a!d5<>rsri;mFkMT61{dU6dxNSt~>(rWHWy(Inoj@t}cXT+tU#{}D4 zUH0ZTxs%xck$8mY$$Y>)6I4J~NFhqt-QSl7(2Zclbl1a?pwK;XNTBQ2zLOY;6akW(BF_b@}jRar;Dj<<;Z@Q*lWC#G>quq?!DVG9#qg-J$ zu7km(1UsA1B01zYMAU@Gacl?oeK#ubrV5lmy}j^#uqFMD|DS&un5gvZ7-_@?^9$Pt z(ANr#qfYECJuj-LUZCwfSpWAcFC46@D~6%h!WSLhow!U=<+Prl@LfLu5nnA&6E*WH zj=~~59J*TY&EU`$vel$*NzB9L^;S&_ghp3qnlFv_le~pCtW-eq?dkqC#Nrn-aqR`Y zN#Lg`U`Qs0aYTOt;*we>2nI^DMJ(m@;f&e6k{q3kotm8+Cnv~!+y%T~<0y92q5FJ% zWsWz3BXY8E?m4|ev(1LV9|~EE;_{V~Ke0&q@ja`M^@vP%CM1=A8O*`HHy9B{B}*Sr z3vjgD=`nH<;TH&0#eAXP@2tPO;+Q~d;=hMV*6Es@z8ZhdpQ=5MN0A&pMd$Vj`mx&6 z=f;oup)$Fj|EiG`1y(hp%GO&z!L9|+2>^8_C6qtsD{&vw_zhTB6YrnRXCmWlWC+aH z|BnGpQE;M=q^a(XS_d41F%CmM1=szwOp)X29ir8QT-{9^foH=Zy4jug3h38`^({UE z(W}+jD`0<BrXY{F>R+ z!?zJkWe(Wp5)g(J zlaH{D{JE+0!x$|fQsO4;Bn~4~ezO;I^289{jjMlyR_TjUm9eVDJm6}~6gw3VzFUM$ zr)tJhzZ+X!tir>1Qu=rTuGaU&aOYh#UZ!QVUhzK%*+LNBPH*C-2?bMku_PpH_wU;8 zlLHZ|CnP_afo}nZ+9Mgt0gT^V0TfJZlU59Z3(EqTA?b-L1Ovz}ArstsN4tL%MX~C^}IZWFIa~&7RsTl0M>!a1Fg`mTj~;Noa1YjHB&0~gs^s#N^|g= z6)AoiL}v)7ED;IA_$wZi2V{r%hfWT~D$Bg9mNXqNGTHB? zq!0yghu1Y&^h7cq)Eh2q3CFMz#U&`CM@6haz~%a6YyZIZGDWObDR+LFIpg z*?(A&y%6hirzvbK0M9pY`ho(`Zob~qnY}aEJL#O#j6)o~i~2&vb_DWC=WDK zj3R|DbJGX|X8U{ikVz3&(--;JT}pqWqy}G#_&a{!?gCwf8kJHeAJ^Un%I)@nD{{NR zj4&EHEKk6%!sONdJ5U}1VxThgO=oIv`h~V)^c9Yx?c*Duv#>k&V(P>|!!_Ak!v<_I z=h(Gq08x8JD$i~%gJTnOm(j677$iyWLBtQ7uv&y4EYt5vf3!qs|3MloDQI<(wstcFHWF5hf87QR~TgQ#gD-zD{q5(`q@(@lago% zjCm<;(*=~S?@)9AfEO)=(H~PI0jincG4Nb}Eul0kae2YcfBlb~QP6+d49BOWfdoosg-@;rY>`6B$(5wP*E@zN}NZ;K@C-6(1s&y z#Tdr?7;pI!IGKla(4bLO^Ik;ZHv!<_&9&>g3eH;Egb&Q-H?{*uf@U8o@m6k9wu0!h zK=*b@TLxU`%jcB&>vM53k;=aZ4-bH+MBkJdVv;jz9^-ZmNSA*WHI6$rLCwJp@%&Z| zV9cQO8(;A{_zk)QigTG6-2zj955d3k{}0EZkXEwA#5gd$8oN4K$|&X>x9pE>e;=Vn zSQe842@njmA&!sIxTpAUTg7C05H8*TVeG>&zMI;cd;JLJdJg?nbWtHc=*xV2TsSj3 z=TAW8!oGcMgBpKkS!ut)=+jIxF@|cMk1t~i>6eKoLM?o!6j=~^O`YJ!%G$D9hHl7M zwW_LqfI$lM6bM&-e|O6Ee8+lSt}-B!eNNV-D;!4hv_2r{RVG($mZ z-_cw6d@s{`DSMCH<_|7RO~S0~MoH1}ze8>}Q`jw|XJ6_{cOzXol|(1Ep%1OhVRw&8 z2!OpXBHG^%Ba@J%ZjCHdrhbX|#Lm$v0rxVD%bi@|XUT!K_T!q^Yp`R+w4MNdq$@gw zmQ7nmg!+FN98YrH_F3m!1MS%=m_!NmvPS^#t7e#99^vXYE>8Fz`t}UGyH|^K$kU1~ z9egc0op4M6E*CALJJ;d;>$#hFf1HOkn#v5#Kf76L)B zt(pv4=rd;}CO853K9pC=&Q9~(TE=%KcpI?SkUcD1l7yrYKX=X(yZrXUcx`W!v)>AE zJb-_)oPp}Y(~UtImiPz;@>femPFf!R=A@Ux5*AZrkKwGsb)gGz;~ZPHXFCt!7)&=O zs=jyi+7k8&sC}hR{@`b8*n?R6rQbLIW2-Y`<*(7k)edab{vd~C4St5OaJIA>b>n;a zRzH^w0&W|q7I>}vIRlLe$Be}afs!Yum+gNOnZ9Mxd}s^tedK@v4ZMf)Gmt6Y-Jm7A zKOVeXniz`W&PV42Yw(ofps?X(L6-wM{-&tj&>2wJ1FacF)j4pnFbtaC6y*Sg{f0Q5 zMGeRbbdBgtVcLVbB0riLOy94*OrtSSE`Z%5{h^>*20IHFbztIcl*u>3 zYOE1D856$<5wm$=SkpT8pe|qecsl4oXF>jgupvg7ik1m`1lZQ98q|P2rR*sMG zeF$27gi%pXZpXwa62UpSp#Di?C8E{>;sw#0Td#}JL;%J=6(~<+u{d`-^aFnp=vaoR zXffJ*$9LuQVUfbq+!o7%a2&3FWMFk1ldv1agh-~9IM_I*afhKOM&3gV$TB!xETbwU z`@849fA_s;PTvzqqQI={PX7YlQbfMj5uJ{N0G=BPHhWsd@bWlf;GI^E3aaL0Fo3;m z057QI)a)ZX;mSi2Wj-zvS;&9dZNd*GJ)Teq7R0$Rh=v0Nks&+EATNZ~@=pEZj(Dnd zrD;+}rA{}Bj6PCY zHFAt&)_{7~p`bB;L!~^;v?6{1LZRr+WQNzYF@86ol2yV?Q{-tE^m;irA?gg1Rh z1EjEhU9TZQ_1&5DCs7#8YR0z4J2jaCfLgI6=`56m`^x-+Rxwt30zVrfj$e9=ejnVG zZ8Z?X$?L4NvpdzMp?QD8jrcv8JJ=VH(rPvYJ_=ZV;1U64d2u32z^d}C+*jJX{y)n@ z7Kof>DrDL(_DP6#lw$2Bec)!%-sw7ogtg^{JTCS_1vx>lB?EcV#v`c&L&vxH@RUaX zK%alKerpKPJ*N2Fq@5>@wKi?QJfMlQBoG4|vTBe82jKMe03&~qDR0x|7hO`yWV`FZ zi8RC=N_3%`iQ8+8ZG%kfQV}!jG!D9DqKi4aCyc}ae$)k`UDmt+w37k%c7Y3)T1hW# zozz8J-vwnWnwGygwH6F#uvuaHs%@>8ovu-^=~)9{i3~=Y%v8*$AWDJPv}a?lB2X_X zqjDIHemBOQaF>54cjqe&U_tIFqOsno5IekM>NH?8yFb@F>6Gr9QyxH z0(k0WO3h>o95XaKy0|5%+TP&JuLt@2q51gm%rpaiyD@+2-0ubS>f`+4tI~x7DBnA{ zZ53?huTat)1rVgn_Lz)m!V^MN$yljsBp})cd=Ij0+rCY2(AIW9)B(sSd?p*9cVM^& z`gJmOjxnf6IEk7@sszU>aI78J2a`YqyfiHYOYPDp?NpnzKoUthdz~d|g1g~eb0_aZ z$OVjqUgKm2Pkj7Vf@6L+7`rx20AbnS zmJaZ40U9*DULsfzj)}TFlG%WMX}=4=q@C%P{ksAue{jv zt)a@Fe?4w~ZZAtWFs&xd)c_05U_W3qmzKj~fsJ#lI;^crW`N_76p0`v30tycYQq5@ z?0o8CXK|JU>4po3@{K#t!$Vj3%x8>BQ<*kpHYm!7dQOy@XbZlzD)|#wBTzd98XLH< z#lSWKB}{vMlEa&=i%4qNI$)QM0{+JIYEr`sf4SV~4h*7wVB^4XP5+KfW?TE+cXwd= z?pFX(2xJ7p&u-Tikqej^rqa;U6BF>5r2W@R41fWNWk*6<2en(6ZXJ$`8YBbW7i8v`8IvQ)4(lob ze~=|(%fA0Zx@dBf?U)SzYeS=Zf24Ob*IkA&YbX$^YJO>`bln(i8tCyG_NC;@Be}}&~Rx%)D&PTT(P#5-K%O?U?1T(IN<%__z zQu}^{wVKi+C|~_Mo(}_H);V7*U_ZQefSv(Gl&*Y{M|bJI@w_<5M^xRS}7Y}$}5sxO2>@U#o-0K&oe;S1# z=kT+a8;F4f#;cEN($ksm+;^om9>a~8Jiplxoo?ArNS!?$%Ra6aZ^4I!bD;A`8ikRF z*r3h5JCK}mxAR>;VvMhCFeuvG_MB80*-Is;p>by~Km6zA>U~ZKbuyrF3LPwGHDFU1 zxwOs2{GyW1!{Ppd|u~K9k~qyQ^Nwm_8dVU)55@+b`cu*8@9J>ra7{FRA#G@ zCFvkJSX@?v(01 zHv><6&mu&i(y!s|T)+lEd}?-MrpB*71`k`55sd=XHwKP%AJ?F#p%N?CK;8jq(nu(G z5R#WQs9oba$yd6ocs9(Ge;mmHU(l39|5oM%Z zNiGQ|X2PjQo$z9b+#&GOi;`T7`^K@E$nQ`XeHx!6$d8c3G;#Bq6Vh1wy!RYu{Z`%5 zfoQWtxp4Qx;SU5z12KBXKVb0P2ncV&z+E}_A&n3ykECC-cesare@$9%v#Wtxp1&yi zL(rCyMjFEV_^UU_=*GoNh(i>(Z7crwQB9~-R%m^91OBTPYt4)sM?n8-@M-nCAJHXw z+kGJ`rPASPlP)#x@Ei1Hcdug1HT~+Ro%JnbbqF*b-B<)k7O#G(VB~DrzI#md@Af*c zI1f_KCgCi#r`);=>~jLw!d?E__}vlW(2L!g{$m3 zYZKM0BXH0dzt#2Kq6)IQT>IIT!~QfVjizzv%?H~C>PtV-fvbASYKB`{0>f7WMcR~T zu+h`g9dtrBpaim@q@QIOkhG7?jt#+U^X|s;Y?Uaa^uPsCfB(Mkcs~y@s8YH?^;CR2 z-&sM6_T(HO>y6fnl(?9it+#&?{Ij#8SNOHTD$uVCetfb6ruVeYH^Yjda)1l4XGjGQ z<6Qe4?AdRI;`ufNhiP}W(`UO$cNu+9*tScQV&EFf1t5V|Z@Somo>qJM=yk&nFfLhT z`VgH+a-{3Mf1ddJBkp~&?$jl66MDT#4K&JJ^>#&CYZbeu(&FbRg{@{IUc=Sy2y1yYV~^?7Wo zB83f?)9My%yB`@_n>6^l>#5(;<&J$qc{%Yi(k}y7vS;6q%QbDA-+5$)ZnoP=AE;5V zKYrkop@0)GqA1V^KTL>*VPTcPlPCZ`!4~vOsXg{l`zRl{v*^c@X8HTX9|4$A22Jx8 zE_0_Ze^Af)2xl$mJ$vFe_5MaDd4E^{slg1IL)1zR{Plxom|*TTZ1?2RAt6Z_WkT;C zhDI+?M*buQ@?X8ly8@6xzDeIP{P=3)38GGjvBN5#w@FByZrY*TdYS1fUsPG1H%=-q z>W-(BMG5w*3ned-tUr+njaNtt*qq0?pIOA!f3?X5`n|fz@T4bw{pgTm4bag9<3|GQ zhuC35ZNTfc_w+@%yf65AF5DvN^WTsw``s0Ijh~t<@UKo(?Mqb##Vl5vH%+ zgHrF{aV4TSY}=qiCebI_V`938>)I395VUe0%MK_&yU0ol5F^L}g(dZYnHY~D)yIPY z`vxxAGdgiIx~Rn$JgZr2M}_dV)e-vre|bY}&3;Y3Y#AHlG-gdmM)Gfs2vmUpN4vto zV}^VtnH2>1;K5@(dPS-p!|UF)&Mj5CasA2&_6wXZ-)(+lNCGAWsC5KhzMTBp#@>9I z#5i@qj~={ZAMF$rgL|msB&@Jt&Dvz;#`3jtrFsdOM?6!mL8%lzbc{NM5x!5If0&Fl zi~od7sWXS-;BjX36qqp0-$EgW2*h)W{p`ywep{3dxX{cLHThY9cr^5?5?|rBBYou& zlh@V`3*2u{)G>V3Uq6N8%zoeBvB|KME^Q_@41?2&4+fNgS$!0oSV-ZO6*8fsKdb4= zhXhv_s2%Re*~sQg9O$$z0A=oLe+v>)0n3R@Eq#x_m$84LdVYqlHXVPnU@PdI!|*7& zqCz2{xCc)Ks5zj@jlF}gA9IxsR09Izs;`-;9KSI3OrCvnUON`C zS%~5X)Th7VpvsyPD(pX5ffrr|4u{;Md-k@AB3O0>b+-5?B!j1{&F@emq;+V=8^~*hjvqF;*Yu^8g?7e}@Tx_123%{=Uoi zr>dLEWf$+0S)`=4{Q^lDo?lE1Vzf5lLvPPURC5!aokiueP96xiQzW^5;dZ~R;-tQmBbEGE zaU=ctn**N^Ev@pYz@-O7FhD@TZ=`qmMOZ@$>J9r!6AVZ*c~w&rn-XJZ%@`4xAxdc} zO0|spkRLS?dne;_r1?c_gm5I0L!Ode?L%XrXm<}L6Ok>w!vf_ zkuVbpAVd<)zwQZo9LU89&;~J8{+0V8T!B8bq=X);-(&cg6tIVnBN(j#|2}A=fx3X+ ziq9K>rUSHZ$CqT%2DqL>xg)0N=m*6F-7`E9`PrD32dV7m_)DJ3M+wKG@cN*N>{d3- z6?RvLmXsG5fBvMt9j;o4jR*8nW+ELJHFxPINw#O)H#`f442M4-6mR5aWuB8!iAYD~ zHLrLmUl`Cu6()no0&q-9iUayt$mxc64`VDqHJX&Ijn*IUGJ3okboo>cb5Xcz`~Ie% zAL~G$`ySVf>4Tg{&*1RMdFSo)0vvbQ86uh&U&;>!f4Vw%8=noO71O@_d4lD#nE<4}e0yk~k3iSaAkHS_$ z_W%VWe-15yG~e1oe+DZm<<}P_fH@IfU7S{a?Pbjn+k+Nsuuuk zunc*BqbqgB_=rw62?gNX4%p%gF<<y^rt zuAZx82d@Z|*AB3@{9rRA>TU*KZAgEYYs($@8GY(W)wOt4_P;MFvQGI9r%d7}ZVmD8 zx}id#j`=EqriVeP*Y5EB)>XFBl-SC{e-&D{c$n-l{(dpdqktYC!AG}}n-J2GQ~Z6C zL*Ffx^}}BTj>J1THK07Mr=eIuxV=H;`2pQzU+0&hRaIo5^&ECZJohc4@En^M#DY#z z7KQa!`Zb+aJXHUQ6S|n)pIFImd0vm||bA;KBxR=$^21eY_?J4cM6`sF37Eh336u+#ivVYx0r`7tUOt|1$G1T(k#bDr-zJBI>ylO5DBb3t;f7Q;_0mXHC8^ELpB2|e(cXN6O&Wrk8 ztrheM_(Ed$*JMz!*BH$vdh(f*e_2mMJK57&Xjg6vwzPf1z%_n3>ye)eC7_ttFe?~I zgU+LZ!gd?Y-zB2}T)c1U#2>Z!cOAc;&B@74qngmjEv9F!BJ8E`p>i|BQ%T4L(ci>9 zoyooSBwNlOu#rA9Xbd;da0-oXJ->5@MGNIWFL377l410w&=@M{zFyEie{(_lIe>8CdT2MgD(g8bf=UKLeu0ZEpCEDy6yf@bO>Q{a97pM@D zI^xh=nZH)Y##mpVYy5(!9W8!xs6pxRNV+9QxiMzZDzpS9pf;Y-L60EpM|{cTPL{`( z1^FDll>p@g^PLA3y<^~#kie|?Ak2)`#)A2U3<;=K7*nngBU`Are>Qjd-yMBFeSpD)%{pVWVIWHK%q@olA7Eha$G zt>=%z(|{lpAjtr{ltQ}=94fxOn3s&K#ne7@NQfMf!Y$MQ2RyXhR}aQXDR zwFFn*7bzTVs$_yqut!sQ_P^Plh8o-?{@pIR>d%Ao`nmubu}BLQP;;{068p9PQ1ly6 z`KKk0wc@X(2iDr!PK|s-WGJcjQ3POd(ct*~qPOHwpdG_Je+1v)z%|w4Rw!#?w-WFJ5kl!wvXAG{8jSe%Fn;Gm4t$)DGs>&CrZMGBG-I= zti2z;!KzO<3l@-wzmc?v4#)T2RaYic3s_OaZEB;QaIs(J9#G23a=E8bU21oU$z|FD zFhBPsCP5_0fBzN$Iic(u7(gN>(S8}1W?01JuuEn_hj?h_X)>`dQewlAs07Mv^ug$W zB~%>lx2~GM+8_LS=>=z>iVg+1E4N^}TH@c>M5e;n?Igj_(|`uCm=7{5q=+a4;! z&Gtfx1n}T&Vuv1tYi*=QF-I|hmU7Yi=&lA9<%R`3(N7$RtHS)WH1#-HC8vnMN8^kO z71{4KE+kzvj9h?KA0V$d=rGCi37l%SC3eFS820f zrJJ%EfB3Ax|8UU+WNtP7{4D3LP$cj|_C1u1Nm}2-4J=y$M}5(XNe60E0|#8I6*G_G z22k&w0Plt~*6mjxYWWQ9+55%foz;Q79+>vKH#KPQ(IV+Oh!8X6C)j3MRnYK^Rt?uB zaEgFTf^D2{jXNJzheE+95RSF^aTkeejGu5?f4g@)yZQj{X$v2a^mG9d49#M%2zaN$ z3o)e^OoEeKOkYL|h+R_sjP|g%RRNx^=7%S?Ci}XtE6;hQ^cB`(`$-fbaf1C5_TvK< zP5kT@T=(T5b?c~Dssz>y=5#&)I9R7NE+xe{jk#~UogV1moZM1e5e`0hl;T$Mqu5ZV ze_r$s!0P!;$3ssa9oyE7_9i6a9KK+oyaF6SYeU3a^W((<4e*>ZVfm!rxTAH&2gSXd zMCj-5YyJEtG)@tF$d>@#XF1@KHz3D@3hGZOWMMy7e@U%Q)VjPQupzmR`&ARDTK!u@ z4wg}@ik@Q}j=kR|H1!6w$(?LIr5C%{e~yaeLA}1dqCaT^Y6SDB{S?T}E@RUGlfPjd zsDZ+p#ooRx?_9A#w09s`!=m!zeJrhV=2M;z!9jF++ED7U>B(MGkp5wOxiVU#( z2yPr1T3(y9@&Jc}-=M^Hf!+wnQm$M6rWCf{;2}6D|HZrs?ivQ#9z21Ke>@VjmlV-O z@LPe?Ax;jW>c5VKz1Lsno@K3x!?&lDpkZ7UJFH2_24h(Tz`vb;r$m}qQgO|bqyplC zOMw7mj!p5f0)Ht2S-Sq|(2IO)NvjnzwR?&ew?kfbH|BE&$*g4L;}`oe?6OcK{HNmt zz?OTStgdx|1_yvCrC#ezf1=?=XM-l_U!Qx2gZNy0PF`8}O_0d~Y*b0hxkR)=_FRVE z(Kep>)LKCjU<_*p$%F}@UIX+&+F68ywvTy0L05#7^6Lx?uX^x2b;3C|w$y&yqb>O% zE6-z$#qF(>K*qBwL0s?uD0>-MpZE5sCAV`2I~H*~sX_UO=lUn9f3qj&dR=Yy3StFV zvb;q`YFa=GY7c%7{vGQJIjor9gU1@*t{-z|*J0P0yn!?b%r@ZR{; zxzTx~EGa{_?g~Jwf8*Fy$u=)tA`F@=N!m3vG;23ShCXWg0(K<}oATeiun?}B$Nj!s zpJKFShQbfXMv7x4gmm8_-sH=4%F04l>PZ*Q?eD-!22Zd9axcIC5c^iVk}AI(wmZPy ziSgWKBAGrNj|1vRBD_C6kfiS4?}hIg*g_lmo)l>N6ti)cf2U$GT+i}cnyDXCwL3Vs zkR7yaA3X!p$Y>zkIKRg8QrU++hTe~yn3jWUodgsT<8Ni1n*Xi+>ljG-cNjQ889?`| zX7EP%wqpyW)d~t-#o($I*b*qWX?GjCn_NZ~CMSqc{ETSI0>)7OngBJM%Xwk#)PN@) z?qhJ486TWHfAuvAjp_74<87=^1Ew@@y?!!iF9iauQ9^s;muK>4ioDE{&V4<(*-<4k zS1b<;BrA~MBo*6vobskGIze5@?b^r0VOfQ=*m}aR{e>BD!^;yauK-drI4T_k{7xWPp z;=SCAWQwpENzW_bpcj};aAMH;7Z%rl_rBg1xb;?#$D-MFq8eHAb1*%Oj`ck6o-@LT zf%3E086V&zey)~P`L-HOV9dNO;Cv3B?_IUAV*Q9kDqkg4o2AF@^Z+J!==ix}tegy% zMMCT`e;U|#JQc$~ONTaZ+3U;gt&T#jy^+FRsetc*#-%dRU}`k+6F0?j>0Y`=K`jZp z>U%`1C8YQ@c2K=q9J77LYc$&f1;GnIF~Ij<`XV1gt}vjwWrS>a zeOg(04GSji#gx6SoH5U z*(Bg-S}23F>65>HpabG@;|#u%ejoscr*>ac5@D!e2M8*F^mc>t3>Z(_qQHef4KSt zeIL+lvGz^HY{^!hKR{6Xl$E`MXmMPoe^Z~NWWQxmmNjbIHo{L6HLCt|4Ym#u0`P%; zjiX?y@Bv-tMliTE(+uO^W%a{{kHP@m?{iqm$v`;#28RTkczIdIp6)3m>|xTT|H=`h zn7b7cMS@i101avgDFZ=O4eAwef0v~M5AuKR43&a|VAyu&diuT&$H?xeky=jy-$0+7 zTWY!PFyIyA$dwAZ_EMrVKi+C`^{qQQ6Htf?(7DJ7!oT2m2Y`D*2}G=_a6UUd>fn6g z0DcKIt3pflFcH)!a#_q9);FsZQ)qGc=B(Um=y-;jfyK-9dQBXis5L*0e?>8)fl+rl z9ll583X!)~BRCmmMA6=P_DNzXNve`Wf`|o6q;sO_COdBclhK}O_u^1szUNDOx&e_E z?;jK8%mNGa-T=U+rJN%S8%{L_k%sS3B9Mk{Dc6)OFV-J9`aE8-v3}S5>LvO;%&fOg z*E32l()!IA)~s>{1MC|Qe?PcIIBDZONM(JDBF5IDEwxN0a68vAOS%JzJ>tt9YLV}j z)=zp8qe)XOhkV{L>6vIkuok;AXwAJe_NJ!bMF*)HhRLsk5)k5Vj=!!TMB|2fh+m79 zfZ~j;6oU>Ion3J581nPFgUYiyUIqGdu1*bs^w4`RI0qp@14tbD&fOevDpDP@uL42bZS7iH- z#w?cHHOTzC#YHWe8ED%X44Y>FzaLsi0oikDNi)gck^zp5iM`M${yC*REKk2UEYccX z&&l*-Afzcf=B`5(fBNpIeEc+DvOEXEsqEVb<#q>(1N%NF&+dDG}v>Fi$!5jua0-u%Ja(^E64i7LW!lCCrz zi4(JkxkkP6f7?kT(H*K-@}+o@z-g%-hbgFiF5c=7EdWft1t1K|Ush`Qry$g{(c-p9 zk4D!cfzY*Ya{^YInPCGzX;k_WZZLd-x%p$Ss?Y3|;yKt#s%ND*)Qh4TA$}%7=c0-Hv=c*&Z zvZ4;VegeQfI7K=&Vw6#Ezc*9}d>1XOD%;sXGB2Pi1z96UV=+O?@C=X-pmty>$hm zA0{Y_&!>_o19gU9>mOb5C!#rYVVnnuqe#c;{3XX~;N= zzdDsgMI&(`Tr$B(-QsX$JE_J%aFWE=N!NxSF!WvG3&d>3g?4U?a(*-uF4%Z{JC1_| z`Z#kT^ij}SDFRvB6dayKauKPM=Ps^ge+?#Ad4tDPkDerq9)e^a256KGXgzukz#wn} zxrFyB;7V}WBb3!WCf&(Q+e*H!5cVlc>Zxa2@S&5_ble#a0@6sDiMFwp6Tt`fw#Kl` z-4K6fdPvR+H;;8-i6Vv4p&^0_`aMT^lu7F?Vxy{8b8bWIXt3YH#uL^#qJX7=e`3pz zgIY;D$=G+aG+$t^JIn8BYgWzhDWM2`i&tF(ZesG$9xLS}e{tFSuz^|FMvl#hz6e|4 zlW7QtR7k#j?JTxhxsuXX`SvY_s#-$cqnXtpTD1_nX}9g=BEG{Zvmt65yGf{3cPwHj z$s5g&8L(dKYp%0fOmqMHHXSpvf4KGc6}f@L>aD?9z+)NVg#fBc^LMtC3L&w$UKZL%0YV%>b0B?=3rX7-TWE&)0MBKpYDAGjmZBa198we_(VLfj1W| zCnFN&HLADAJEP#%J#Q2;Jz*?}n?ab8(i_PW+OsW?KR#gN%4RL&as2n{nOC$T%=2N)YYrdI;Zh}byYby0cFp?lMZ zM?sDNr9@WQ_8X@*Vw*BIOf8jKIzt$%E6rRx`Mv1$WZFX~e}75x_@)g};>+iN zV{!(Qz{+k&atsS%#83EcA09Z-C`{&~q`J7$N=Yv#=obVXPjykSBo;c(X(J4Kt6-3r zvEok);all}KDfo?3!S%eJ6^0#6ot=4U`RN2>II{dA}|OTR68TC-!CbY>TmNRwazim zF#*5>f$fe?EAoAnf5*h1!Y^1j!{0ncS3y5c11v!AVLe7aMnU%4;`Hj?s-0o>z_H&! z=``Z%N%$kDXLd)LMBywBFzB~nz*Q2j$mVRcG1+hkwzLR+1I_f^^>nM6)3aJc=4S|3 zA7wS|FPrtq>d-riP=Y0`D~yHCQ6p94zSV+`j6M!e3K_FTe;9F)*=Jd&dKPYE=mdRT zXa1s($U<;ZoqKEtI*i za~R4MK4c{m)?rSC^EhO-SN?8Z;rF3ZZ!i3)C{3# zoC?@yR;GeAC1Ak7Q6<|_k5g6fPLi{nY72?=Lrk3txGw3}X87^n;K&Ni|8&5CvSI<0 zv4MMQf4~IZ;rxjmX6g%WHVUXaK)0HH-v(Y!-T#om~BGz|~?}v!utI0@Ql>;qhGdnx!7!j^QBseAm?ST@M6f$^RA>x2RoaIX&5{_^8iI{r#LL|f zCyFq>-q7nl231Uw+hiT(Fky>g9@FUWM+7Db}35~-o#zkeM*Ngo7^8DfA2 zBI`9SJMs9Zy`23J1joUn;^JjkX!$;vUFn_t@gvChn(;#VkP<%D4NTTzC_IhQ^%_YY zHS;Z?g!3_z7}|m@@p}L@(s(BvMS3!Ke<5xS@`eX|GU1eU{qqUH%fy&;*PYWZB$v+ky-Y>_ckMIg78L#FpM!)Z2PHq1F z#T8HsnD!=8g^u6~=DrPt=ArsYywq1`7u0XA)GqCTx8zUN?+C$-7|3Yp0*E$%# zKZa-u_3Zq8+b3|9FN*_XT6Rt%kQm+N`--uX>s34n>Cf5X8$R0%_g=Kwf13e>cE1xp z#tIsllFwQ~KFismXSAVn@fVPYDw-KsY2!u6jMIn2DXCXb&(tkpw~(E44l)bW)O<}4 zcio9|84^~yAY|Q>$Q|NIiMS~r7}qLY*21QUj|U|lNb5itbh4++)nc~Hnl2BCmQRgi zWl#)9nnf7U&_(t2xWXxBf4jR-o4%;7A(G(Fix$4C9i@(2ccwc=o?;Vu6zdKNHeXSJ zCE!S~D~72jAL$+@g3HkZBdWf%z(Z6#ZhyFUdanR>0y{d6P%(AUg0CT-G5vkzpIscH zVnYmd3=)o1?2~(yZnLmchSqZT zY3Iwy&stWB-|V~k_yOnfgaLvV5HyJ2r2`0aJf)aO{ctWZ8q7ug#`fp7+= z#Djny)#?|yWB%C$e?}q~$Pzm7q-HFt2aL%q$mDAPyZOW@jep~9j#(VRa&HH4_Qp#~@q$_# zd~*yyWizCqTMq?Kk0nOzt0qkvQb-91)lud1HQf=DVrPn}r31@Z#qg@b_X!Tv8m=G* z@Whv#=I7&lfc6DeMd$H8@TR@6RlZ8r&h9Jzepu;XVsPC9R8gJ4d-Z5g)8?F6s|jcd zlUg6!{cn_Pzl}(0GJZEP>>BK*N9s6_o8-t^5sx~ak1Gn*Qk1Y zGRgA$+4gQIQpJ&1{lx=&JjoQ5pRYAy;lQ%|!w7 z&ZGh(e^en*fbl&HlvXZNIxj@8&$<>R?I0Z+HbyB!QR%w}S&gN%Ocn zs2#$mU|t8je;MWV80P&99L+Yxo3`*_F8zco?G|}P7f1}B=LWH8%jr%drvsOjbq8|~ z6n&5zhWu@^Oa{!KX5~QOT)$sCg=UalO_of4e@lufz^e<-j6*R5*&OpyZQ%6)IY7q0 zL{Y}nm>)p_A0>Vz)c~nZKL_NR77aNVx+OMUG7w`-CnpET8nOMK+ZSPT=?X4d;rs6J zzVvEtSn%#*D48A;r}Z=A(ca53OJH5Saze{rvJfG;*6B|@NHOvXP3t4Vhj~!IDCF3( zc}2L+E`K=5h~=nG^w{JM*0SCgbi%!_D!=ctG#5EsLHadSK^#4gb=dvGUAn{g1PQ-% z8oHUX0RXQyP_i=;zwcCi71?(S94X!JQhRPg9`w%S7Y8r(W+IZxjC{tUliUc50`#Yb zW3x!@q|Fo1P^!%K0>`kpL<92ZMAeRUUt1KE1b;qws5-d`Pk)h$pkfi1yJn4~6ViXv zgZD#j?JQXVBk5`dhTbji^9$aQ8OLVcjDP@vbJP3P?ALb?Bk?j&hn>Qj`NqA$2z_k@ z(_f!QkufA5fM4avk4zqL2OkI!w{_nBGR~~)$8e~7(HyXYeNghm0Ncrzi(N<8Wq$JlN7jzvNvup; zOMlk<$J^6`%WRxAzig2ys|_ia1w%hMjx9F6gI$LYG&-U$^@Eiw!L+i_6F&usCir&w z8^9;*D?I6EO}R2Azb9_EEPS$DBrxBC?SJ_LpMc+r{6t4Zfwv{$0vuRPHN`&8IcOM$ zZku|tT>q{Y5WwCW#}4%V9wV@z)9uDzSFx#MEIT1lSOe(M_Hj^@he{@g`Ue^(T=th+7deDV8f|Sg<9TD}rp?^r! zAhOdkW`GUbVC;Ji8FbcEk*1lR*WW}!5m#4XPHbiYInB3{+f+mARx5y02Um_kQW?P zQojG)9U}&EtdwD{!aqX#6MoM~rhns|DiIJ{x(5A;&>^RMCUjd0iJ`9@;pbAQfU=^) z+0};d;D8kDSQ#8v=_0*Eoi3ifZ}RNfX5bMp!X6J96;E;y1L#@M)2~-Ka1+{~7f{>w zTPAvxMkE{v6{jlGuXjlkOEF(Y=}}}A0Tr8ovN7OIWKWTO6?A=m2%S(UvZ(5ICNmXX<$8$SV_CCbosf{O?MT?D z8)n7cy{tLEhO2i!_q*n3xOb}Y_lep&v)lAgF61+46KRWUtcV$&`+n!V5@@`J#e(rw zjaa?IlILuIdr6b-!1a^0b!?&{!nin*c5==)Xou`jepCsuruzea^ncoVa}eLKJ(k%+ zy@(pT;;^ z!mep*{Q3OBk<2Z~Ptlp`#0}u>8%x4sen9Hg>bMKhC%9hY2Bce-f*~$@Bg(e%--6HW z`6DUtj5FH{dH>!ynBham4Q_^5txrm8|4Dny2x$LA9hJSd8_c;KY+{51tv1j^)a$dr+}mN<}-k%y&RTC$nYWpQu0Fh zLWRj>l|>#09?@7*Kc9>76bo`ChQ$%g*Q#`|fbS`wiX8GqeUay9xh{kPY#eauRy5u) zr-{4Has- z>NQOrTELBTwhT9;NN>OF5L+KZgJ_QADo?rZ}eWbTjJ`S4Of?Xcr5CbhD7$^R5IpdOe7G?38Y&|c=ZfFc4ZxXxycJ1p*P7*;l%meH z*~O?Ifclrtf+lg{myw%OZQRD@m*VjPCx7S+AauPV9BhrE)^<>n{IZuC-gA=$(?w;; z!5WBd1w_vH1K)!=O+O=AhgIfNO72T`f^q@Dr5&L(LkP5ZKj)nsvjOR1{E!wJE zDAqJ^r+HNF(MA3-UIfMhVM6$0!xf~+J~yx`*prNTGifn#?sGX2N#q2aqEfDluZF+N zJbToiu$L-#E2 zkrC0qOIOqnPpnW80$*J|D1X3wObR-8 ziA4~6e|y;6Z<^P-=;KeRbfoRnahzIss<#9h*{Gxj)z?Yt^bi0h20V5hrDotBV`^h7 zSD7{kOX*hrRf_orWL$ccSCtkS!^-_^9QWRoQrdNrjD_(BSapIV`9Yy@Fb&LFSggP{ z#8nSMNCN-{Aqm7OS`=uM@PAB3r5QUZB4YZ&|uX%ifRu{Z@g)6D1 zFcT^4^L?C1!#CSHIqkrJnCG04EQ|DdJ))J*L`0t7s5kKpFxa;lSf1DOt-p4Y1`oxq zBGyd7w+`O?FL3$VZy5OdmSzKMYk&H9x~I(8>)}iGd*EMn5S_CX0e{Cg)vq2PjF z{y@lozLmG5GLzs)^d_jYGyhgei~1qI3gg<6k6-t&27hax$3SD6K<^vyOvbNP$BCNk z3J!d3qIsHt7mF=&>+rw|f)U_z*cQiIsOsuB;0N=tCdt>D5r4-9D}duY%0^T^G|P>| zXZa;PJ3+U10yB+}X}Xd!z#X-beV>pA12Z9|n1Y_4vJF?9TWEk$zDgJLBHg-kT=Kde z3YT+;b8T+y-;M(^Asox5aUVmrUQ-G87q9T1Z$o<7)y3%<<`C-Jg7OOA^Q_3Q53o%l==T7|9YI}X|9 zZ?d}%JwBRgiUe{)pd?X^hXKMo+%l z+H{at)}HrRbA7t!PTndldyEGf>Htd-&4!$wFXc z*kFxb@csjnr43Dz4j-Kt?1xc(lJJH05Uk?_d>K#|Q?x_qZx6;vDlc%-UTtaHg=Z2l z9cLs!HGe|Af}Llk!UCMfx1hXt+n$6u4}PE6n*pJQ3!8UZD(z9H4ISM5E>jLKyN=17 z7|^6$x9pgnW~IDWpB(+-VH&Gj-aE}9^zdbUKp;id;0M=f%HEa~NqRhXM1KPd{$@I`JQ~}Rm-;>*cZu$sm#d$9 za-RF&bsE|YcXxOfa!ad@mU8c>*`!Hq?4ZxVj?_WYKK#b0fJ|um0e{rWu!f}dJiXK0joQ;%S)O5PUr+4Pwb|GUH9-z{epDZUA^o7F-g`sNO= zaer{#j}Z=X;{6I{0$xvG_u}dxHVHImD8}L)f;L8QF_r813ly9TDPHI_{z^QzE3n_K zcWyvlF*(*I@#+Zc>4>6*f6 zX4LQXO89BsotT;e{i%C5FB1j6)wT)EkAEjV&Lw(E4&cQkyI--pc$I7(M^KXcQ6-a= zUoSHNl^X8B>nYbqDN>Ybk12gqz&a9iNz=3|-G4}} zR6=sI9Qk?Knibyp+RpCKziBkk`;vg)dwFK>dLyH&@OosN^gAH{^*;gM-8;TWx-j6E zP&U>AgrIVr1G^kpCO$4k^*D!j_>NY97{)ng(p-?(j1>FV@UAPZ+%zr?3i(lStv9YIDsdcYhpF@9-NByY>yhy*hJ!Zs; z-q*H&w%HUO6d3>|`{0#P{w_3nxrtmm`5P!Z%()hL(zbT_cHOED*2i_Ax|Gw(Jmc6H z;)sF4VYzS)7nmt)(_bskIGe&dp>7U&{)R%Y4iZ!N5?{)qq{BrvRfU&9!LB!mc-3N8 z>?ch@)zYoj=;KVGy`EnKaGXl2(d{W5Zp#fmpzkyB-DxVdTU=To>W*e#EhO6@wbg6c zDja@300@740E6jhY;wBs8-MaNPJ2Hw-98rPBtme!k-bwAeiq=J*nQnsVm(BEv;9bf z;~n?{;E27av`uo#%y{D!mPlQrTG*R@VrMDH?d6k{hq?O!{ks44L+TOdgo)l-h?fQ; zzP>FB>(iJY;bPfl#I0n_KG8me=_l^fBP{gmtl!A<-fry_jg*9T-)FZ2Yq zjDd~%GXQtjgZ32-jBQaPg(h^VRsn&HKOrZZI9$+Ok+V_mSuy#GjF_?(YzMxv7(~ugp=VLb%Fx(vO zGMV=ytbNT7tQ9aHJATK7WeFEfMDkQbN$K$lI&lmx8jt5644Py zkPEA9A|UNdKcj>$mI|Z-1a*Zhd%eaefX>!MN)g=lc`ot_T%Xa*PNbja!)m`xs zfeiBr#yoUW;C~8*Dnh@^tor%q%SHmJJ{KVo(nst(a>JYnV|$mC^ZWd2%)2G$dsKz45q_=CM)d*lEIWx>04GAu>76mBY&%x0kZuoUwiXpJ(w;9B`&pZ zjR5MQfI!A7Yo>rz&=zyi2h8Q<3zlM$?oSm`2+_3z_~V2-NWe1Rc48 zwhl<>Sbr9Hr8GL^Z{@YMsZbBYws#>18D~(}X}t(1n$yT(KFd5I5r`_E?JM-d9&Ldj zovo0)ZK3q1&0ZA7t;bgabl)LKA?r@~1;(!;2iZ zPLGxA^O`3+! z9g*8dSu5D(^AA$R*qtAu2h#NVsJgy__otw*&szLFwiq}8pVbfb;YWAr$N}2s1RC*t z<$oCkZWjzb)$0qt$OQbIw<6c6Ilfed4rlv=&9wO;(&pvKuk8rXWFVCS%N@(UVQCa< zcZYrnUs1jnwF1R=3^VV_^{`hcBZdlmZma2!=e1|5A0c3;LElTw)4hlYG4>7R>T@VJ zkHHXnB*gNX3Yp1gHza!7;Mg1V!z)%f`hVVUSn|81CN~;u@O$6msqPjpkJG4=8DHXe z1V= z_W3N1e;_1|r6%4@wB&Ik}?_!}#6y4(-)GIW2s(&Y& zm0}ap3hiSC(!&XMHu+;Z0JTTvui5jtp=@Yd%O5_Ee@|SxIIx6j&VGAQTv}>;g=BJ!OB{Kcx(FzMXYDr!5-8_!X*8qYQVHE zG{gf7qtoPOnG5uOOyKTS5ZLkL+JF4?t*f=;b1mc7!GXZ=+ED~&QDBF>b2QNUnD=i> z)f`p*k^zu@4gjso{d66CiEYVcQ9sQ1&d{sqewRU2YEBe2*AP)v`!09P0-ljFDp#Le z$FQ>MX?M1QH7sUp`p5sl)46AMkwFg&SwGN>d@I1I>g~PSaj+>pLUs*cmVeNoF(P{^ zuKArzX~|6Y^P5{xmi)0^?Zd~mzniJ2gmsxIIR5ChFOY35n^tgAoCRWMe~<54@jqRTVCqZQ$G#{1 zMKlPa(}eGlzJ#$!%x@kp`H;pfZB!s1e(MCQDW)=Mb@xdmRa>SeYaELM{XsF*==X)) zDyPHe&enA=#sD_;{rDZidHD5Q*-|4Uu8Bv0>??B~>y5q)bm|%M)qlsDV4aYCp2)Ec zsWt+ny0(aH9PqOyFkdwAi-Tbvk6yB^_{Z5^48(yfov2_whT)6FpNmIf5r!Z6p@n6s z@ECq29DtY*3lNL(vW0?y6d#AN0}`_c?ia_o@Q9Svyvv#jtaKRF%-N%&Dp~v)Z3eQ| z_9J5L@&)$Q<|?-f-G9GGbf2SI5+}ev-DDH5k4@9=WM)Fg$SbrUKqXbJk|(c^dV-Ae zkwHiBQKvp9E~Ng&f^DH6k8AvRN9Rn62Pcresd&hs?2keLS<_Ho>PfUNm&j`C4`|nf z^7!+Y1SuA;;Tae{9M5P9XM7n#1iv!a0b$j(!jN7nd6^dl<$t8kS!EG^W(y5LB7KyO ziUDPCxz6g?&o+l&*Y`#3c6C}PzL;VMytIAeZ5UEWUJ4vz(=2xW^_Zh4MIP20irtj~ z;c>TNbksX8K?PQEvgN!$z}54R0!;fJ-8G}}cYpI4`kAJ@;i6s>rhjggLYfFPohV2) z7$)SM zxClRYZ$!9pD|}a07uBnAL~TMI1)|n8I#X}!I3|Xs1fUDm#{snU;*DO;g!l+WJpgup)wf3WP&xFIZ=mR0R21(-8^CFjcuD}BaMn-<$ zfxte{F*|(q6lJl_W!PcS$MsFUlnH`u|L$*pj+8~~GzXLj+31M|2W^A1WjfYygO!xs zu+dApwSV{qdXkQa%+X?_viSYyi>-CevW(T>Q3A z$#2?jYYgn|b!KqTKzg-dUt%BF;f-`{+ojnPaer0VLGg_ig~{Ah2aU={1PZb-d?gq5 z_kwFQNQs0CcNxaOwClV7&i;t3x2YDn;Lr^kd{IlmR4|=AqX@ky=j^8qq4iVl^6euk zPyQ&w){<=6>qev*pGFlCV>;7cj~kq}+vpc0PtlTrko_XMTjpKQDPq{$cW?k8$hCF> zgMUA!T%q@#o}fL)^R>X3vYzPOR%5x`MBElBW3Rv1dPPEfo1T}hD76OWeLtiY0=#$= z?*wj)R)ly#Zad5%zX~|#yI(%g;#rz17T!qDP_Dy7x}C7VM*dIV|!ewE-?HMbnRR)*i{F8S`amw!rfDUaKqkfXP?OIjvJOm& zPUX5js-+IRPg*~a04LCh{(S|bu2zS$aj<;?80Y^+0W>ChX;raS#_&5g`I^(a7y|}E z_E7o``~^7+0N1KJa%8RV zH@3h%QhsS_gTBw_eJII3iKai{`7a$p$@Kg``9eD~|o-28;M z19`{e3^Uu@VHIU!MV$k(M?4Qmyz*5Pv7>Z7vTCnLyKa zW9k<=h{<$;R5CF9 z2m#U1Zi_kFi*g4Bbbpc-&SMm04L>5?Lu&$uhOe3LTwDYQ$UYHDcc^b4|L%^x9TfqZ zZ}^5RJ4ZmlD2Eov#stvyn#%qyZ<@qYJD+@Z0UazS!!f%Yif%$EUG}ii!S9re7Uw5K z_X84&JExFBBx_TO#Z5kW$iB>EdZoZ5>gv{!%gQ&(RF)KKJAXLiY68{t6p<$4PV9~t zxVrV=`M=qXZdrhYsg9(d2YH%4HC{ zxaT_$2H>%1U4H;PhG|xGL=Ve=L!~5gKhaHCo)L^mnny~DCyp0_Sb*^2s6IbtEZ=&7 zzHUI>c*Qc~YJV_X8Jlju=xhY7*ayd7Dj;i0Lui1o2O=M$qn77`gpr)TnmA5I3UrP` zFpEEzPe2ww@bodKo&;JN!#@F^KugX!OUSN6;ui%pVSh)p+^X=A(Rd{ITOPsJj07g@9~Q=>;WR!Yty9{Ew$bo|12~SS_SE4)=bF3F<4*|Bf23DFH$~oNO;fL zq3Qq;>VF^z(SOTDYtoZ-8@q&|Px+txd|5{*wQA?!Tr zLHS9xu)Z>#1o&27mC@&x7VVh^A+H%Js)&1B)nrmI;w4HAG~SHr)7q1BOa=SV`GG&N zTz|Lf9UthIIC>pEY0-=idnCMb;2Iwh&nU z+{lfdnCUzA=j+;X&2EH>_pCCq0hP&0qwSR{y+R>c`p-yJ<~Pd=`$BSpYA1=|0(VS>Qqmwn!v+(2Y;OXE`{hSQH_AeN1+j?@Wcph(W(}X&$51Q zvYkPX4(iTJO)cpo2SL^SO)cemFP*2Roh)1@=zvqkE>fLFVuf7PYcaex=Td2CN8?YL zGlD~V{nobk(2t%gy+dyIa)tAI5Uz{8{iz|FL~Nj?l{_#FX#18o@9j`8u|EWVTz{1G zNqANZq89`)UgIzgRmnh2dXZ@VE3$n2j=;HjsnuAgA=<=A$*HcHS)*jkeKcou9JKNf z=gb5Ui%~9hYR!pPHmqogt&OB@sH$e4^yV@Dv>#H-EVfh_vaMlA8NX9dkFo|Xa+}9` zU3x*YP$ScPM;@G;XMTA$Do2p{u+v)niVOg6*IFWBpbP7)d^e+|z zXnE(=J6!l*jwR%q1m`6hnN^Z7y@-avT&;-)#_Zk%V0<$DGzKZA*{%0a?tbXw4&k?) z>N>~Qnqho4+$Vt7$59ykv_iPql1rbTE%JbyQSj+XIM zC4deAMl$ch(jz?rao$Kpl7IdnS2xLxY?qmY+gAO=U#Bn+uv7HNM{{p&z6H^qN!FM9 zN9n0*nbxdc%W+8I!M@_sdq9_%b3fnwu2Q3Q{ZzGf9+T>~dJ!cME*(!IU2Y^-<171| zzM@}_{~^4w=9fbt?1p;&d<-HiUu*WpibUz*--}sDR50^n)8*}lT7R$P(mOu?W;0{E zsEDHNB9TLrR9>VW>|0^yF<4%P>{RNBxod!TZwx^$OXnJOs3&qdN7GA{W7~=f`05NP zf`nut8P*RF)Hz_uzyx%R%3A%-90;#40w9R6G3!fBpz1&&+2Y-DS21wCYynR}#!to5(*73a`Bgf%_L6X$OF^gWVzo8V6z0jVKoYYIR&1?Ds>p?J^}Ii zfH@Aa2+fOb?x29026v917x9%_+G8!QVQX3k+hDN=!R8CTz<+d))-VV$8Au2>_~mwG zb(pTO<3&y7RTad1+mHk$iWiE}@xh51y-md9OFy6&o`jAFyAlDr>ZZwe+V3P^^PDZ(R}j8yq9|9lT^x??n#lu=gQi#6m-uFa z<@qK$SEz>Z<3-2v*|I_(u&3HWNSiaCH{Q;5_@*) zWo4xVD>w`{2V{TX>U@pegvXk5JZhDtBGEuD;TS}b*@s@wss+U5iD zCRUb#*+?CQQ`w2Le&{apT?Y(I!$!%^gd%*3k;xABf^Z{w6Xh)_-68_YLa=DZ)1=Wu z8%iu?@qhTSQRJ0b1IiXlE;HcR8bY#SzX;6c#N+r;RT*z3pddPJq|bt0{O>iWVdqQ! z9E`8Z`0ft8G!-P6cjm+!oY&)c+$i3WJD7AEm{0nvxL)CzLBHacKX}!BEyZtH2+)#} z$3XIi!;CSJBn$#2s0u!gL4SqxZp)3jvkpzkm48<9c^Ua`DvQ>(%FpZzz8jG(lQ!d8 z?OcIp+s%d^c#i=!qfi1qc<{x#&D2_iGgEepc}sQf_3qADF5j0U!U}AamCslyZ1pX_ zAES)m*phOMK*DxT%<~u4ZO5DMmE2P`2HNfkRUjCy^9sMqXXg7r_Su17Ps`wCJ7wOQ zQh&=<@Ca9A$0)!E^m%Cct?&as^qLUlUjxh&)9S0PQ8;gF+AQ-%$>ID_5H8`nT@0F@ z1!ZUuZ*xwx?E6H_$U)g0FN8f9XrM^)IMwRlUUh!YU+@EQL2f=js?61YPvUN#JE`oD zXI{RlHa+e=&a=SuZx|!IQ?_ZPlT(QqTYuG{vZM6eRhpNwpX5`#MVLqadYpGmHEGDr zGBPF=(@Mw}&>ObsBy=*ASmECj7fNB!zghbAqj3l`xBuC~P8(xY9(4y(Fw6)7OaZA7C94!L&S@!jMSY-m~BV%58%BNADkzM6oa0x|wyWw13Ej z#ANm1Pbi;k`o`XfRY@VA>&zunoT}RGWxONjm7X+B4h;w(NEdr}Nz%TC!6WaLS`lBk z=N>;|-}5WEJ$Xd%ynNU^-vVwH8EJOeG#;FC{1YT zauiaD-ILf#;cW?7T@&BY=nF}3`+s8YVF_I}Wk5ex2vE1%){8{p!VJB33HcyYfa7r+ zML7AcOnP{}0E?gu5tP)EAD;~~@TYM9?igm`#c~e8LFpf~(lUC?5Bv8yjD^ws;qOU0 zEZ$Y62y~1hFqvW}U+=s@6FNs?_`tG{VMog1`+oB(4Y(gd?3HmNb~ps(9DhKCq?|5p zwzAxT^fTsu+U{McIFZr&x(Zx6_uC@CcY|IIK#o%Km<(O+XmPJOm7=lAlz6IhOZdgd zJGX(nd6W6>4n?J?6|Ph1Gi@npD_VVAkCP5Gm$`0R9l%37OJ%zr#Y=Te1mB{c;OBz4 zF!6)(rdZ$2kj?RXJUzj~qwUe;kKiM&diGs478+XRPz)TKK59BC9DAAdAEnAO8`b;9E2H0$j5FoY33rzt7 zAvp`%*$o=0W9yuRUAI#39R4mghMu0D65iFwl5ee@x^_l+TdwC0!1BSjrM$K8NdaxC67L<9Q6erM)A zf{;Mr5fy`ZV8xstyowg`; zs%3{hapNr|=?rPsL+sMPf_r-it#n|inSv^G_>4Qix}jC`<8@~odrhfD zPN@zHIq);Ul;bgmQ|w2NvC3zQp==-wrsS!JPN>*2Es-&Hf-PW)+3 zo=*)g5PsWUVg#@yGfLl$R{(02`H|ZyFCM_g8e_Ia#7XhTl^;IU9q+%cVNx++xvCFJcNF}+t9Vm;@8KQrFq3D z1ub>=plN+%4*&yVGjWVj7YVQ^9#f@V?d|Ai-hZ^|mesXul9e1XnShe3CqTqv_HZtR z*f;E~=86O3K%)OD_8mQ5E9A#?oC#FI0S7M#x@Xh}6~;xgUd9FFQqppj7F6PqY7bOZ zVaulMUdrKgRaKnTRA^`0mGE)4QH847W&H@Ea|UKc8`NC@JGu`l!Z>!DqVQ{?i7tuo zbbm^Q#!2V2QE0D8`1t`d!vob=3ew@?97R}pr9v^1A{kqWUb9w9Q04ewA%XMb1!5Yb zf*~58OZ>5wiqg3A(?CXCrug;7QS`MnjR#bP<3XuZfL{I#6WkjwVKVu#NCL`N4|HU~ zw@xoQiICY*C@N_YD`3!*0GWA*?T~(}$$uU5(u?^FNV||QNGZS=2$8SP_Bm^nku{`X z4JX6D9<>6@?7%T}8Rs?so*RYkL_R7bAMQ*6&IlByk+E9b+o$_pASl`Myg>il(HoeY zvwR2VVUpN)CoQC0X4s2h(w?y1J#!V9wp_ypT-)<(-1l!V+^EuL+d^Y_(ewu9mw)sN z{sxAWmJL<<_$eCfgXFWZO5(-)%|+D4o^TTv-&lAC>wSZ zru|JBWw{~~wZZmH&3Rdjy!>O70~zcP1A1h)G5mDRs&){cuWaZVCKKC+OMl)4Cof~I zOdM#D1*!ANNj0i5I|yWPw*+PYvSh`CDWU;6zJy)56>ki-;W@j|6asi-)>D|bKkaW1 z*j22}Jl`BUNC@!L{+_Mc0_S;0P;R@rGDH19nDA!EXw_ju`5}TF4ZFk3>XtROz_xWv zzKch}N_R!$GoPGbQi)D@p?{3N_8Jfhlkw0`Xgh_TRhXE!xK>wV)aX8yy7MXeh(Hq2 zuTs5gUL%sg&e$;qAP@yHs!tLxxA^)kprw*NW}hzHj!;efdgbt+qVXtHMk1nR(yvnm zZv?8^TxSjJi-PQ*;mu;nrw7+PT3Qs_)5e}6YkbcPr*J`cNL z)1f1APbG`am>Em$M2rin)`uxymGBy-aZMN?a8?s~rarBf30P0R-r#UoWy|opQ37*2 zgo_RrtApVjMN_QSa}a8B@2D^Omk4A)?Xj-lsjCkI;Vht;TV3r^uV;0{)x#RA5qFQT z$urh?=b)`?W@AnCbAQK3hniU@-)5539zwDjV6=oworCzmx}SA^BkSAy3HZ+gUV-tg zXZ#z9b3fsp2paa3SP(uzre z3cG|abFmNxe_tZ;iKWY(J{R)>3-!ulBQ#1B%qlDa>8}DcwSULsTQkFC#b-0+w0mWx z3GtqKJVB+n1lB?0liOJ^L%-;_&rK~T;g(q^g^iQ=29G2c` zAyg+kr(=(4VA{wy1#^S|)#Gnyp3(m42OsK1i1WUa%(ay&VcFn-NE)w2qos$WOhMWv zzrBY5Aq2K<8?&d_fO$5oJ1mNg)S5|X==xp zZ>(p{$)lJ!D>$*Pm!IsMa&dhHxUos!-w1@Wr>y8?|;pGegnZ2W;PUJv`p9DW#Pv>Kmn}H z3iV^Y97&}Jj=1P)P+X!h*ZdVDY(aGR2_rIQCWH^Ln!6?Ecx6Js0yR;?zT4?L(?j^h zjxDRDHKu!=md~EC)Pbz%2HM%?{$2ADfBvrRo)PwyF$8WLKM=cA44^vHcloqThCZ2L z(SI;%;l=`5g3oZ#4^#lM{j{IYCzLM~V)LK_|HO~gByp5k;A+O-i&eLp5it{bH%IK@ zGSN5@S7^&e@Ed)Ni4y+6xZ_h@QY&MOg*B%MHo=Zqn|!_`PqsmyDEs2SUzsWL*3UH^ z!xDnaNZ=R5m;HpiBH^4rDlMzDHK7X_IDehWr$~Hvz73#ul2I1&cNgC6Vl-$@#8Uwj z0*R9>6R{22BmOQjB@_~Lck%FdFExZMo!oGVWL@nc{G?F)x~j@EYW3bzH9oqvX3*aX@lQV4qmf|0HS<+T5O^|XuR`J*4UWu82( z^+2ghYR5#vghs|*_ny}bgI<-6LLN!`Ux{Vs09c^arPKt9bfdkNbm_TGQeUeXOb?CbzW3m>uUU4vFF z?B2~xX~GhK(sX8DMMDx&aXI2=X}lsMFKI9Em3y}b`}bgQDYR(ndVg>4QNMhopPx@? zKb5f*%G?0$s0R3VV~z#-};YOT~i z5JhSd)FI;dBTPYTA8$`VnxowIvN>cS(UnAh_3LH%;h5cx^c}Wf8xyKrvoF{=u%}SJ zSP^CVoFyTWm5>J#cz;?~Z24h!YU{tteg80G5t1Y8Tj8_=FgrB!!62Z*~l(ZhRZm1F9PDfwjwIWzHI=G z?aQ}t7DNi~+JAgtzbWteb)a}48Nr`V&lo#s@wE}AtPn$d4G0t=XR_tzvH}{+sfo-A z+q-dGnz&yo7ywK{TGZ#vvx8XoAw-cm4edVa#zc928VF2^$zb#vO zgYe*J_-vF(8u$Vqb1{I``HKm`l*%7x%S27tG5JdX$bSIPPrBhltB*1u*vNZ03mBrmWScIW92t?)YsJ5YO}%M}KX4 zZ0){BUw>bk3~<7FZ`m4i>rB`)O5qKJ+4e5rDZA4%0rpr6`=Lg<)#m0LFPluEwbQH- z<(^B1tB|H8dm1U_Bv_D>NlYL8w55Ml!2t#_Ff@pwFf$gI#ek#65rp#mV6-W74@HZ& zRB|r{+lVG}H+7Rf{EW~U=oV}jAWDD1Fz6dxTYu}=TpnmJN8{{>glPZdGP!q=4K@C& z1dS>!Yhf?B%g5@gJcsOK#>Ljas!p{f>=j5PcgWUk^nsyhDs6ILTxmcusj@Fax|+k? zB=?t4pzk?6=V)v<=S=FBUeZ}FyyX3PDUPV&W`qV5E{rjIa~mWPw~+3 zHh*^x%*}6w*tWV+X)h$V0X2hPY{2*gPQV;EZ?*~kdgTrY4td#fXHG0CmJQdqo)Hr7 zP&Ekv#EqGs*Y^Cit|sW=$Q$R|sAa>T2;35#X4H?6?%bH24UeS3`g?lRKyE znar*SDfI`~eEpSi*ta09#sbMK3rsSHk2>#IHv{0F`0qZ2Ys1Ytb9~tHvVCB>wTk?( zh%J1znYMe7rx@Ll=aYhGuL7iT%W38a_OI&nhHB@(_|GY5-ysYC+^=~l}MN`GAa zn3bn$C)UWr5tsJ`Lp|BI5nOJt|JprZgBkrU!?4rFam}AG1YK0hmEZMES1-~9xD@qF zAfjyOT4EKZ!ZyeXNcm2ph8T1|=^zpc0e;%mjl1K{sl$UlRWV8`_<^v`ZzIaB2TphS zz60)qIc+hlor!)^1rt(Gb3eJO&wn70d2!4=;1mv`2FOC4+?n?!1}dRM$K(3+ya(R} z8rdw{78xlS{k9vGqmb9ZXvc~P6p9SA&x#VRKLUH1_lP_OrEB5HE;r1wKfV{{5Dk`C z-3*@RjE$6#Fp#1wFvI#SAtoz%3l{-Fa0;YVG-?j+$4;2kEmmnDxWEBo_J2M74eRg& zvIkpaLF`x(hWew8Gw4;7bwA;clRX}l2r$2#<}tN(LS!;^keSHw-&2oz{bEIttJmwT zV6e*yA%~ZANZckUw9I)hF{Z;!uyWqf!5US6LoTXw)<*a&Bwk5)2rVBNFct(ZAOFYF zd2G9hL{apE7?9Ht5kw9mGk+5~i=4i`>vi|?#P-0?5=GUy`)najVbNCruE2PXy#Nji zU;QegeDZ$g1h8KDc)lU{^y75aXOPSFinnR2Xa`jit3Q>d$T3$il}G(OX>2Vw)Z$*J z$}GQXb0U*dW$hV(3o1J3d#X8_Sr1uDq* zF9Iqslj=Ph6CeYh1;BK+#4rlSA%dibMrPU^ds?35?Qi~9?;QE5wZF;#imQ85`^8?C z<$fMkf_o6uJ!XEYFJL zs`w|G+MPDmEPvN+?3Vm!NrLSZ9o3fV1XDNXyKFvoFyi$dhZWOYGP+ zx9cFGhvTwR*Y(|_KvqVr1a>*s>0b(K1eUO9YlSAu*F#< zO9L=DupkkaP5?bX!oLt=9Dix%VPib?am5dmZ-;Hkbx1*O?!CWZq_+y!QCgkE^{(tw zhpnL9+RVg{Gf*b;;^sx#tF6|1$nV$vepg&GEFxTdOkLm2{&v?8PZDiv+tcZc5SwP- z-xO7?GHA zo!trwF#nKvX1YK_(R%A1*P@03K-MG3&iV%3pC4rfp(cNval&uy=g_f4i3{;6O=r?S=^k7$ zcu&9>cB2$ZvmZLeS@(evD)4Z;VWDdNB#^8+l-aZu#Bf!&_nZ{8dmx zxSxL(hrv>MlZ&jAWC8`~5vF9EMp~(P9!rQuPkF5ata(Z6K@MaV2H{&YgeCu|n~tR~Y#b3F^hZHSVgTw$#7AdF+tpTvBsRm<+;LK$oYppZgLFr3~6>^4sM3yL?kcV>{t~1X%CMmYR-i z%K-o9sq9)W?qTg(8rqWVt`o z`@8|c-E;<;i3K3{4SKOIX{|V`8`&8zc&a83Em0*v3v}3cXt*ttK5WBY$bs~ELi7r$ za0iPAn$c*s&@`X~FLIXwJGXz?Ca|rkaJE#X`R@b03^WDcXS9JrV#9(tF+pBmcKZGO z)q<~jA_3!P$vqdpKysCfDNvyuk@E!!Td>1~Yx-M0jhUum_{tcc6r%6uV>2r)-@L#u z(A>Tmh|WQ2-m)0<^T%}V2R`-+JoP9v$kT;Q(`gTu?{{(YH$EQN5fp#F82_>!g#gcH z!PxS{FA0PGAuT21QojHGgGN<>Lxb%~ao?2`*)`x#Un`92RNow6!j z%Lcl!-?Jq>O1vMAdKrJ|HZ-YZ!RBkm=~s(e#ejIIZ0XSmkKgd`t0kWFx0eUDy?2sg z>o?ox!ZHD6`=|s!y5ATTB>bduYNEd(E=1ek`bffRO>}J#9CrL{ROp>~RewM}^Jf>TtBr&Po=s;ww|!>jsCf;0%8v-zoqarZ`xs(|9B` zQl`uEfIsc2`ihn2UAwBEmBs8R?)!HUg5Gam_;?S~GQ2Ec^oDv5{xct7XE2`s(z{>x z9U&3~d4F8)GtSE1K0rSA>KJ2GSQA$rcq(5q^RBM3f_6r`+gK0ku9hXDJiV- z@$*~UC_FQoSJ*cB49h%e#nDqO-T{+TsNWi@Ay%WZM~Q!D(OhzCc>uIdYQQgRMz#?m{lDir2IL&Lh#P@Kq7!+ji`Nll%`B;M$6WRb2VkqlvFlB6>z|gA0s8JxkM3FR(yB(<6LQ6dP^-=3r!xZwEaR}d~;8K5J3DF}yeUZHEps{5~rUI`;St4M( zQWpDW+G^IneRyih>+j2_atPvZJ*gRJG)=H;UR2nkB+z-m$^Wd0@PxlSPH29nn%T^{ zH+p}7ES$E2J?bg^Y;SxXo^8KEU$(7M3l{pm;D`mzG9>bO6|JBd^>rJNreWCdu=r(g zRMjVm%$Qe-#F|&z0DNoxK;5^-fayK)KK{4*$}bJqsS4zQWcGuV?#^@^;=l*l)*)b; z_Ycrp(`=_}jsO0PFC##!BnasF#f zAIu@^%8;Abb58x%zK`GgxytyaR8x|&K-J%40JOtSLgVh(&m_?ps%_(EM;RuOeXC+Q zn~helKUWP^UgVkYQ-#VHQ-k3V3omP^=X84$fiVTfO+foz#M=gUbo8YOVC1xK#U6h_ z3t``%7g1BIPnw2=C%1Wrh)2Vb7Ur_oR-~zGC{=>z%P5>wiT$9)kb?PdL$a`>3 zb&V=B*r}P{4J?sIiLtT{U!J;eNu`lG41`7|s^>&$Yy9X6wuC~P9(0%$;axf4-vmkm zo+G>txPdc#deX;4TcQ*DBOb2%ok4%*>a=v9=(S;|0#g-d0aDa~&-ehdY!t+6#UDMW zYQUts4dN6b;Prm7apaqrJ7fKI!MQF>S z0vGswhg^bP22FLqg>xH)t_UEkA0k2c@wZq8fdNs9QjF;Spe63k(FpX*1bcr@b<|*Jmv^gU!^xh( zb}S(&$dtzBK-9NP-Su1GpDXwOrrl4+-90}z4u!V5n}>CGRh$u&iLxf#C?Uu!zLCEV zvIxA}EAQlfNh;c0!?o9UM=SiypGkemG>~$AU*d9=<~H%IkkphS?U{e|v_Hysh9A_F zyl%iybAXm3wE}YA!1Hs0$6mY%MN3UHe&;_cABG@O6#H{FuS8)i=hO1U4l=uPDBdTN zoU!Hrbo#<3^-<*-*aDA>L$oS4EKe&W;)7NndIlD3+<<^aYE&yAyW>_v@fZ$ns zHoXo#FAiW8ILD5HhT!ezMk`#kke|Y^hn6~9(qvHs%N){fv;8qHE3)?6pVVE+xT1P_ zoV+>r4>XyDV9oI+>b!EH)hh;Z#);1mIuXTurSQn0Xsv%KrH^hOE%y;LM$f-zvz2KM zqQW2GIpYK%%M9o5afHFv>h(mZ(w1+EWmmHf&zEqfyu zpEMB&hE;!vD8CxXhgy@v1niUGHS_TxRMA!)+0l~|fXR_=Mf@c3Cvc?^K-UeTURJEt z7^mAEzCGR6W+3e&0aQy}^DYk}Sz)XH<6Qq`)GLRV-_teZ=^IY9cR?U7R#9xy8wHIX z^aB@F_hUHDXi$8fxwrPVlN`c zal7St-xUq%P3DKd3iF$cAaA?LY>ybP;bQhNnwl`xedQ+0Lx`teuUW*k9pIYmd6oT5MO1ixHZOfs6lGCVC&i^F^k3Woo)$J+=Rk)(6#C}1HCuIwU zACRro!oG6^m~R_HxRZvt?}3-Y?|Xt=D7@bCMzb&L2$7W3>R%zhrQ7-_Z!=^dhsnij z@DJ-YB;j>dtN0CCGt*n_{jD(Z4Hzk~rV4-b`!47SNr52|0Q@YWm<@1^9s~~azP4`= zaug(q>rq}c9=M=*)*WMbXd)68b_bi|RbC$b%cZ){eXAX17&DLYHYv)#N@r~|F)&-p z6GMuCy_BRJG`dd+%IGkIzLHL6!gF20Nq*h2fP@kT^7q#5E0EH$F|S{2EMq`kFv@?n z-!5SEW;l(3^UseVmlEu^c$JA%pF+jmdG%Y~Dwc>ru&l_ImRcha@CoCr)kx{A3m;@j zzBFPbhuvn#qwQt*w9^kmlpTb~0a$zXGFa6}RLe&LY*0wZC0X=e6^3NcGRcx?&B)%~ zQwxmWufx@SLzpMF~5>B2gFL6%nJiE!jW&*+N(t%IXvNSq}yb{s4K6RCRd9C(oUf@9PZ^CDI%Lb3>izA&{L#8^}s2lgL zMD4(WO>tjE6=;%CYvs- zoQ-QGNT41V?DAI^YaWqGD#+Wv2?ZwYUEL^FB}lmaQf&7`C!iBkk$+0GprM+{bn_6? z*YJ#Myi0c6$oL8cbYWQ#U|WSTX3<04N=|3!pa8!hH@w*+9({IiY_)a9lI=AL2hiVzI2|%XhBTL?+5Ti%1SfR46i`{2uun)DpzW zQqMs456i(2+b^81Qoj}x_6ennYA>>T9i>BA*D)0kj5AA;;F0zNi%xYU@D|q%1|PnU zPe;e!&d&p$ZvB<>_M_acTwfaFL8aIAlIv?2KR4M3R;!*ebHjhX=9TBBV*Lh8OUaEV z61I!7xy)m%4N&s(R4{Jo>V=oH;bd!yWv6hI3sV_{z+^77cmq3L1ba~rX5EK6y`+>j zKkak`iPL1VrbP7nmF9OUebB96*J6ICTa2@GV7iqyMCPhWfmeX}0kSCNsMn{%!6`A> z6|aPSxx_E5lyra0)|YWiiJV5;mtnt4`#>&x+^de4?Xe-S*BQ&a**YF5gBj3nOALx! zxKX>O$`Yq=+A07J@7M3|1I;MtR$${~K=G$wmlDQ=dhSTDgZ!RndnZ3rSklX7!^dxd z(E)<(aKU$U2>Idg`3{>OnDt0^JdVT)O{2up#2~K^R@0cZkv;oP>B%K~6$M5H)h&R2) z`sGxsyOf&e4ektBnPHKFZ0)FpY`+tTwJ!pk@~VGjq#S5;1|-4Y>PIh*9-F}bVwm2J z8j>!TUZ+RUU8ZBlk)>nwmG;)*o}D20+p^R0V=rTy&-}X^!Vl8ai}wqhgd})CR+2|}&5|J>STp63*ML6c$<-$<3lzoT!qK^)o2^GN zDttW*aZgg2_I_PFO!w8jjvb>42n&}wWjhOTPx_QnQ#;OcD|9Fs22`pnsp95i5WRjY z=`ApD)BRI^!}bjvwF`va^Y3z=uD##D=<9#`Wt@00x-`1CIL%Mje$W-WJs8TSQS2Q` zpSBdD2#8^77lpDk{s<(uXy)^|^;L(^v*}+4Qp`j(kT6Sw)9Z`DD44ANK9)3`(BxbD zQBLyTQ{iYRd03R#|95M8u{yu-wDDcJNSpOM{swwRKx^+=jG(T$!F&(Hjp;+vT0*G8!M{f$YcTU=;{6Kd!IN?z@`%9^)t1lJ~1SV#6BsR{eQb z`naqU=Q2LA-85R?jsZgMdpGFh6Lfz~_e;@sQOz5)o?Y#{(?1a)DZS7Ytp(XvY)(Dv z7+f8J4lp3l|TV=aYj%fS6GcC>cLaEa}bSo;d?*48F*eA-gjFoW4D zP79N96rzglNI=irkCkQVa2dXi8p@1GqyV7OcqLj9>fkj1&HSKk@i+FAw;-&g(p<7J(~uTMm! zE#%M((5{E*4zp)jYD_Hq?L|5sx$92Y`8V`CK6HWe5ODD3HuNjz?~h$)lfqrp zTe!3R?iDZ^2B3^z2Qc6!rYItk8;U~xODVFcO_c&pjpi!f5SxGVCb)j*J1@k4eRVUW zEUyb-E^a}(@|N?pBkq4}Yu=v8$Es?v6f7EjuTcxU-7WeCqSA2Hw#j#Bf}6>A8ucx* zudb2T6qb_&^qF!)%5UH0^|hb&jDL}I&wh+?E%t zhcB-ES0Njl{dn2%duL?2xzanwiTR4DbmH&PEzz3!6Nzxh(@%fiR7+Kny?zTAAUl*H27W=Epu2Br*Bs}X@U0j8)6aB zil|H;_d7_zlno$76Me~jzDpxoD5Uc}V?YT2eZQaZ&Q2niHB^59TsQ$E21oRy?M8)o zZaw}zS=5i0bBup9gai2vfML1v!?#wFCsB0yaqN;&;D5`F6|yw+7_N2!z<$S-Ky3Z% z=WMCh(gJAE`tO-mfmFw1mdVz$;vXSAKF2KPAZZbW{78xm0G0quffce=1MiHTC13|O zFb0kx-hzbRROhc>{Ju0CzqAyLY4tDQ2?jnj3R6Y#6f=LUC(Eh%bZ#oGS@4Td0yv+d z!y^vPvmx%*%!`4b31HxP_fQepTPVY;7Qj8T=nUdJWWt;yE#Se(3A9%f6aX(4A}f=h zxl#~|PEeCRmupu2{8Ej#V)cN_U++bz*bktg{sB9CCHV;K)W5V$Q^W$NGU*^dwITbL zI(&fb+2wz#)GA%k>La-(>-eh%UxIavRRb7QY6zq3p@h=0wveB{4^YLNRB9N3z1*huH357tc+zJ`59YA zy@CCJ$LDJQ>hGCCUY1&RX&duAvdq7skYyF`emj4m@wi5lG4fFk;IMz0AJfPFCqh91 zBVK%<$3=gL#Blw9Zx(7x>3+3g3IN=-Sqs*`#Nv7^zo|{f@j%&ZR!oeg>)@-?(D+?o zXkHUP7iL_*uHDh9^MmObP){tr7}bn#_gWR9F^R9WZX?kalpKmTkzX>?I!+=(+VSJ4 zN_>B^yF5T=%D@IF3MfwTUhnn?85!9s`{Dn9KqSH!YSX~LDxJRbS(un@gI9vLrrmE4 zJXyj5^`CWa zmH}BnCpz_QgFeJ#4q!cjk&Rh{$z*AmMu2~(lW11kkF$dQb~JeZDA%S6d=rT>Na`1& zFlQ66FWR{Kag5f&x~1leV^nOnyA4xvDGQ4qmH;601gkJk1+l;bAkLRM&?7vJq$o=qYAqoez>kjJ-aGwIKQ{+-*g6vdRBjq|5YcvQHHte7tmvu)`BB;Ba%&qxQ&#&Ml=+S zjrXg^O^mmbd3T0D!A)5(n0qiO0$NrD@JN4$B2zzUsr55?en(4;^^Ygn0)&6Y%nx87 zus<;N93D-#GeZ#Yj~qWPZ<(fM=G*>Z&F8yIh!)ljTJi7U+fN3vz)E9(i!p_N2Wfw{ zXm-HGAO+-7JkK!P{--A?_uDVdRXpEx<(nf4fX}x9zy`KMI>4=MDaR1j0JCwI-RW2g zMD`%f4ewEoTyRbw4E!cp<@0|;CAz0PD~IoVJYLU4FfZyFSD`6)Z-P8*iz0et(qi{6 zE4Q;DxqqhTyzus_PAnhOLTyYVRcE|rhc41;3h@B(cCHTk5ru25yls41fVgVHv*4OW zaCSw=#N37mY}1VTV-S%jiY=teFExhCQHm(I5!aPIv=w^Hy|Mddz8)ms!T8nYd8)T)o3rq3r7%lQa7m>ln3KVhp8AC`VVbE2mW+86H! z2fw^BuBU+A2E5IVqiKJE^c)jty|{QdPCzKaC>=fK$HE|JAHKC3%(|Jv*XC_&5whuK ze%<2@N7EPz`G$YFd?$hTgKloR(c22s6vR?=YKM*Vg9Pw zjyHNCK5sZo=GR9jc*icw<|715yp7uQUHt0(+k5x30>3K)QnuCqR@A2+nyqc}+RTNt zEXBUL5^YGPJKVwx<}o`d%$bOx`QyTdX+^vG6&nJIs3i{E+I0M=Ob>b94Q9P0$ za{z_KTaqJ0-EU`~k(mDiO(n&r)`axxf$GCGZx9OXS5pl?RO>uWEi53Ez1)xFxZUoN zqts{w1m1gfW6OK0OUKEq7$ch9oyBsR`5gk7rBMV|WPswPu!yJEA2VV}#d^~SLN9&X zf^cKCnLB?@Hfn^5g3a$oA`IdY;~ctn0QU|gbUhj24+Pj}rao93y^_@ys1JLez>a3G z&$F1f))=kBpoQMpIB-OM2`LZ$Mb&9&N0gPY@5lel8JMpg+wq%^OGK%2`L({mPVI^| z5FVo@F*Up4flZgfNR*bKVda_1U%D%xsbefbTLOPAG|cMB`uljmKX2l}mY`cb+myQ* zMtW#Fc>zohN%8x&KlW~w4#y;R}GU6bwg_kqgaA19{BZxpD!2z zA!=JO&>YmnK(0BMWacJ3m=OqILBUhTL^MJgokxX^LQb(sl>1*B$LC)FlIFOv`8ONK z$3H{Y{6zW8~b@A{T$RD+v|9AsncPBWTtE4stvn7q37Q%`Yhe z-%5nkDUCj_>NZ1t3mE&=ZNclc?-Jeq5I_1x#246Y)SVCWbI+T5WYy7Q)uhW0l?g)nj#xA7ulIxfLeH8Arq!D8&m8kYEO2vPb z1bQB$OMYf_4xsIMf5+kS0rqXjJl$A|O~u z(+Uj@fnX*XK1^ho`rgL!L$yGhe!YLu6Z>+Oz_C=eMVq?e0h0I4t`(&jzDEw*o{*M% z#stBPF=cN1TFZ%14B@Bg8ewu8H2C>BUdF70khC34{N0~I6g_}%rxMjm?6_Vq1pIck zw+m+F!DOyP@^ud3f=+g!JbH@Ni3JV*BKZfH=t}{*BQGt#Ndz`n63p}wvwnYZAZfi} z&~+Y?-=rJ>G}P zkfl*d2WB$_X@%>9LE3yr46sk7XqTHNWh1M``=EG<0XUbC@@kTvreFT@#YS_(x08{r zwpeEnYciw+&@2Nl;z)!z+c1ChHOR_E)EVB7pRx0T^n{797?+g>G^z0z(DqXmq<)fZ zd3y7DUNaKj;~*4&-@XRqwoGp(@;O+Kuw;?|o12y%Lno$vML=Z7mxF5sjnGHH zuL-c9e-+QrmN&738B+LOJ3v;kp%U+l0enIybh^%3-P8&OaJ}S1yyt%aNjxw4FiUU& zYa%zk;brVmZPuijZNY6T+fsi7BN*H4iJsn=T$jDuMg@!Z4VTUq!|Owor1s4xJDP9F zC(7zddO_E979{v4*b}>cWk)M_gf#`zYIT(-*$+!FBIhqw2W3n>8ChDDyJpem_$u>{ zo!gST7UWC@Zw64doC1I2D(H>8h3ZIFz2%r{v_QlLh-@#TS5ba0WQl!SW9Y^~FB%n7 zKSC`S8Xg|0v)UzSg&9z}FA7~6MGG)pRDXEI0RwyW9T?E7kgCHL&`Yv#d8S3Bs0QV; zjtfg2uY8HN!&it_2E&49rnFdU`9~M(&r79}Ls!57|1;t5Fr8 zvyBmbo~Qn-d@abH%)T(FrHu!9;=45EFHhnj#%5rJenO0bi-OIp1C~R8Rz#;c3Gw%8 z&b)^}g2F+~3~VhXgW>8?FXiJL>sv-cKV4MBXMeiHRbB^GY?z#eGr(W|0&KRbByd41 zXuzZWZW?e*t|oucZ;T$0wDQeOye-7b}$ub@sJ<)*eHjD>$+ z(x5IluJ)z|B(XqfIR4SCdinOgl~0h1Qis z-*_R?;c>Hdnq3bC6|fU+gDiv_BM&{(T4Q&7UUR$ZH*an1t|wh65q8Jm9qe3>GPn)m zE}~2`!Pp3z|pr^<$7KNeYMmPs77 z#eRT#mGpo55esqmi(=pe`!OhHnk=587h*ZU}50m+g489 zX@-V6!lnrh*&ut^Ar1CoA_YhM3;RGwZs&hr%_Pd>vBO^0NDXhR0iV*_xw9fj{EI|g z59hm1MSOr}`>J`NcngJC;6?9p^5+~;f4cQ|1}J}Bwv$Gkmu{C(@AGmnPb5ufu*AOU zXGQrWOOUaT;VPElnS`poqz8m4L`z8>(C=voEB#dqFNANT_;+yhb$PSV8z%WPmf)mx z)}?HyQU>v%w{8qC5B>R|*EVndBZEBZdqPUH$4Vks#Ehl#_n-+4zrcLDa@66(PQ7jw z{Ca=on>W-xo_j87=)`@bzKHtA*1QdK-3=Un@w)6{5VoC=%)P{j-YG7)K2ZB@p5ZsY zNdjZeAT$^7)j`gxw-(>B9VR;fE~X^PVLqo75m2Xm}wmGYy$U%#h1$MR=F)bEmW+xA&CuA*L-y|zEOwnxDS(f4z|A}B+l zm!WJ^T>lO0Qkg!#;xdN*7$J43C-zc<;qPHlDL>#J>*v~d_|Dor*#eL$CG2AmJCE)% zv~myS+g=EJqt()Ao@OLy6=5~hf5?9%F|&9@)kfEBBNo5|V+Lq1ER8@wkW^w)!UJGE z=n%$HL%(oGDi~wHE|_Y?%V7_>`4NCoX|e~P5KVY`KR6*q$QZo__X*eCMc}Vm=+BlO z#{Zf^Yy}Ju%*^t@1B{IA%DDhcDm5BdrDH|_84y@wRy^ywHUmw^nIl6mr?7t}13PQh z@g`yos2~fVsgT{=s@Mk)U#4`}-zb=uJ0!IWXRVbQ>@3yF4-`%L2|fw;bf6?^_+s## zJ2yz4rT{k+v>IwWUJWirF#$^K0tWo#L2J2`d*rczU9O4mrBIyfe4-u5L#>IzZWE{`iFB9XsoW%PevqR}7t5i$A~Dm3&YfmNa#?w9wYEbIDHUTBKHve>12;ZV?PyF`hA1 z|7r)gC8>4})+HZr*Ln2)iGyRg*fK>v9Wg&$PsmLk;lG2Wc6w%~cy50r0UHX%1kL*y zdYqNwDue8x&B0&6=?5q1k-Q6mh>RWJ4Y-AV!qT>YFB^Vf_Ofsv@)Of0#}q5}ZoQbw zMhS{nD2tw}N7k+q3~(7gRlg8$YeAA%0y~c|k~3B9u|Kc!IF_tc{lSGu3xSmh%neLX z4oLddIaNW<$2{J7v8{j434VmlPBcG=9k}nM3K;0{Jn&bn30c)TP*s^+E9Z4c9Xij6 z!kf(EimHv`b0YalW^jaw$)_%w&6IyQ`xP#Tw{TWlKT$0* zI5tZt93iaSzFy^aCDC?j{UFQ3zD6LRL_H>#u9>|FY;w_S>kJ$titn`~B%GXRgpxx% z{&`-3n7%*9WoA@vL1mqZ&aO8d8N5CRVmgVdJ);4Of6uZftF~r%liHt#u&)4I(9D`% zWx|48X){~yB=mnis`c(O`KR5Ll_wMB#n=eYyZY`*-_3)oL(j`{;pqwW%KJXzYiI0a zw1B4E@|xr^C+cpy6VGm0wGpFwWUbCB)`nUGOxdMWkdS5|e;IsX?j2v$sk;!`bpdo& z8Rr0IJGg*|V#mKuP%xwz5z~!oalRsJNiXtq4{=7_4_GEZ;EZjwG#}myCx!@E#r&ze-p_0Vl(?-H zo*s40hREfCrkp41`Z3N4k~__u^slC}m`U%;OsDVqcXKO?iJ6FQtvCq4S|d&NgSeMK zxNk8Skq>{iZC^b4xSXf}ZX#ak*q36wNO%TZVy^W7Gt!Rbfw+r^;BS_O6T{#Rdk$2q8ZGtiUS7Mi`T`DqF(PxX`Nx!3ld{56HAMoacWue8a0J*UUmCO)AwEBh!fnI^jyY zo;zUDKE#$@Y_mLF+fjcN04wF_a+j}zGnuO$(9DsiP}&xOrNC4J;kA|a%yc6;=#}nnAr%uYeGQnyM!oTYz|UWJ#AmE!^0qZ zECCpQ;Sd%|G{w}ZJgL&6_do6Wvc4BtGU9)ii*lrANgL>pvi-3tMrztf*--T>r1*ni zyouXW#r#D}f($W4Ifv7@<6w-Udc#}`Gsoa4P)Ak_p3F+1i~0-_;APcXtm8KaJRvKy zkNDMP-PZ1IxC9`tzY59vLQuJWpyH^a{NP3#uu8DUWflBTM`%D7n8in8qhQVl7HWSN zeWAWn+mlM&@C(}5c0t`QU#ZvKr2OSi{aT;af zn7|M(fhM;*8>EhG1(@lgDo4i!0&)GWW$W{nzENje;|VV4M7>!bD(wQd@wC2vEEH*w z$MfF@sK2q3#;sc$%r+h&FMiHX*%aAR9K;x0+z4)Y;(gz3;XK`T$mV1$u1kLe)GcG0 zn!JwJd-xP?;z9kgN^>v$2B19-4#|`@lztf@W{eNx-@1zyIPkVpxfsdP`h;Q}+Y1Z_ z-o}#0bv*AXB*p?Ld4JD08_gaN-0gkt32WCo8fG$glsE#Y!6?^VsgVz$R#UQmk4(ks zI5G1>XCt(`Wd)-14Xre?I97k1dQEv+Aj6r<2?D7z!33#J)AR=aq8zkXp)QO3HOnn6 z0gVejFqyXcF`^X{#jx`tfyx&U45KXLP)L-Lb4m%(1rTX-C!gz9x$VLrvX6r)rmt;q zinDNgK{^{~_UaWF`4zhp1p`FE-m$?6L>E;Hz3;k)(7M2Gnj&EmH4FKY((>6W`SKyZO}Ph9(W1ut1Qmrp>oOV z%(fynG5d$TH*HcIS;7#7zu$=WKM;<%pDf&}QfZ5qKV1Vof7ZR%uiVa8)&BbjfH2>i zKgo7{P?AlM&t5>-X4AX@ACX3n~cb(@zbv#kX8YC`uDrvS6}ZT_r{tJ*4Mu$ z-#+&{BNHsJf1{%lc$U8(?6LXq7eHS>P0kvx{kxARUjTo6-~Qm5?O)?hSMNukKfipb z4Rl+7`UGOE^`08;pWXAvW@j?_)&FF%#@pt9t%>&IwfXJMjq|DbG`>849KCD(eLDVb z58nQMYqc(KeqCL>J9_yV(4_x$&raT+>QChQ?)L8Qf6mYYY}feBnU0-3@BX}dntb=& zuNN=1-~NZ!59gPSkCVrN?{yyxu(3`d-eh`r%BiwAMVfJy*qDTy#1wq zy#IRAYrh6qasU3)(fzkh+q~|>>&y1NNk2S{txs=nk6I_j1p};CM}PV7>CrxV?C832 zdTFvzw{N~vHEsB=4;aJ`eQ-1HUy>upc#qv9fB(nPQTw+0wfTX5Ji2e&XD@B7b<{Wl zJhVosZM}YDy60EJC*bVc&g1W!lhb$am~Q{lj!cM2UBCVTVOq6IHSJBqd->nP)fdzL z^Zhx*gRpnbU!VVc^XBVkcl_?tpT9b98-IGu>r1A!4g2Nmj~A`M#l`s>(19oYqoco= zfB#iG`wfHXW``RVHqlh?o9Uyo;}UA6lIU=OWNH(w@$%k~)Hu>XDUS)V?# zcJFoL`tNpA7^U+nmybblfO;ifAQOkzlNj-pjSXpx1GTo|M!$6mj4|Nc___^I=~fBEBM z%l&5lef_!90!=>t_U#vK+_BC%ZC(Fh=kLu^_2K;ha)g(kiB0;B?N02^U;Qs{$#=`R z`~Lkiy?A@wwa0Hibk5#=I=X4R1in6c{l2F)e_TwyU0uET3O*=2;&$_XY)<~}PR!i7-$J#oLEeqr6K!S6Hb*{$0*7;jAP`=>u2-k;x^j`0g})2%P>zxUsKWtWU$10;XU zdug@$YUAZdgB-v1@>k=*blo=>7tQ+~Y$5s!46gon`~LUCmya*C>&L$@#-C2lymQ<7 zayzk4zFb+u@uR5`(|n?~tv+52I`2qxJpS{yHGI4U{NOKZ;=jH9`#WjfeLDg%diUd( zaebwp`Q6Fe*V_5z*$^`F(VMbo3c=UCmz&6R;{;!?oJhOH()QwMoD6zRLi5_@ApASDzaGjoJa|*59qC z$A0_c<>2b5-FWl&w?5?2Zm+Z>L;rAO|Nj2&?e`mIk1y^n04LqFjv)8&*gJo^ZG3uo z`FQDI^^Ivx-Z@+)=&%gWMA%uK-c6N4o@f-Io9EW>;`})(n6FlBIJps7w zpC8Z8VC}O%dp9R1@S8q<{5bmf*V&g7I1bP3&)d$)ja*yOMDCOA^Ulp*M-L6_UH|mW z)nCo-?-Tsz^v_RU^o!x$pSQQSfBf;{|NVder&jyl&3Fi?+R4zZ^__p7`^Sr$j@#|l zPHK$4sCg~7KlZ@s82<5Mgr7T%w%pqnwYTSgydW=XL$^8p<3-)JsA8E!p*B@CYQLzp zyO6_oTaSOdfW_Sxwb8(BdQNxj-2U+bR_(Xk5x=Sj_@O^uTsqwmKWXTV-KO95;cB+6 z5JD8wRH&}Ms7*$0Yv_LuMjfZ+KSbY%Kk^|K;liz`iV6!g9b6Xf4?^(x%fb(o_@mSp z`o80ho#8Eh5H9VFoNm{DaIs?pw&oe(or_y+xr1>BzWNH5>v%1ok=KX(VEjvtrc?IP z>jPcC!MZh-q>0=1`pyHa0sx~iwFG@>L|@ZlilwTGZ79U1%aDJQ=(@uHDBWd(+P1wE zN#W$$+x`eBT2swulx_H}CyyV+gGgE}Caq>D5CK&Trclb3BCP>WCHUKC(!L$Ly@0A| z3O2z#x}Ed|<$y#(f9#AszYjNQsUaaLY)qwYSirW_!oL@_uGhbFTe$ZK(7W%$b;s_| zX^sIu7GE7cA9R16CwDk@o!-1%PZ6Hu6<+Vm?+t(aKK$<5(COoyQ62BP>5Rr= z6OKYcwua6_!|lLM2Yg@jsW-x3Dqe#yZ{FcXP@~ttCH%?0s0}7??e@_9Z{qfwPy8JI zk<;@hecZDzY7P9A=~FmOlB8CF{qT=Juo3J4@7@is54+;tM~-yG@<1PWO#RWMHxLg5 zK1@Cgw>N(XzdC@s1uBg_BoqJrfYikg6GZ0}7o>FY5yyM1H{wFzD5UIX{y=LT0IrYqHzCk4(?&Nwbo?FIi)x0j=e#bbCb}Tz*50Yp%O`a!-YMo7{QbE>|6yV;!J)a8Osnqp)p} zr{eEL>=YeKe2*mVif@4Udn9ut@huPp4QJ$LghuL_;zgf7RbVsq`DWP2gFf^7eUNH! z8`nk>jLR;%a&F6%3faYy+58iFxAG#pbU=8H7;A8i(*`0tC8v1u`KeW(8hPt^oXyT zcaag7zq!}ZHLdVs#UQA*5UxLf0choPMhr`jtYAn333^#87Mq zQNjNa5H1xrJVrhE8MrN#u7B$_OSCqu+1AEMzZJXwXi2n({48|2oJX+{x-J+Quo%T3 zBR&$oJ+2hKFWaSh<9Ay~u$luvv}S(?*AORm-~g~l5Z%Ie5U}9S7k;}~JBTDG;U_`# zA$*IZ#P9K|hn7`%zybGp+UJu|^5fKR)ib|U+~=I1dhX)Ss{QkA2tkg{zjH*@13zn< zQtE$4;S<@M(<=me?Vp55|95X>ddi!F3priz9?4V*OjW(G_ZTfjrwemiQ;UDE1x}{m z-+XNpTrXF7SUJ8r&2!@Env_k)86$_Fma!r&qnesxLs|%9%nV`&p#-H;<+OZ%SfZXW zXX}}BxEk;uKOBf-@PnFNuyv9j2!FTfgQ)QzP=E5sGJGw%8Az5i-0_3!_HpC*qjAq~ zO}cnXLU1(vF$6FDNw;<9x`ThzS5p!RgOiI(?ZDE!^oLFN1FU^E^dB0|JVUb?oV8W) zjZYwa^T{1J9=AtoEf;Jm&lhp$SW$u!OdW~i%wQJe9m#wrVFzIddB`t1?m)^4wJ)$K z+7RAj81zm=qxIB*Oh~x|#e&ZTUWhvibnEUb;P|OY6}+$t7LsLVyp?}P*K)LKL1mUv zwrNd@%X3AVt862VNuM@fD`wN&r%v-u00-UxnLuX0WPk&gmp}3IpZGcIN;}q-y2xx} zVs^>Y_A^(gl+-pjZVGqaN=@IpclTnst3(A*i+ve9%b|b67$%shlQBHH=3O$9k)m6Fd2v(Rzx>G% zjhe6YV`}K|UwC63QwA?1BX7*Q_yNb*r-_$XwZ=^UlvgYA`jBuzC^AvkwMbhC``}F;f{2mGRKs$;8TdXywzxG9FsV zvZR&bq0BV)DXQU6&tPvK$up8?4vl9h zQ;%(;0>@Ad7zbXil&Hq~6KR`C%tv)>GaGqk6^@}PJ;RqtYy(GsSWG@mGZbBi+@S?f zNTh4U(}hiVHh#45<~jx713U{a8~!r9PuNo9p~oZAd|Bk`Hm}wzt<_pio1%~ku#OV` zQ-qllO+c@m;kbrzyu9YBc#Ln!2qD6B#j;d*ex^cft;!uhUpoUq8xU$8f9U^ z(q9ceOciDuyf9mTkE-kPdkgEK+^wBX?J}%`=xqc~D#~n7N;L45bw#82yr%Rpl6{7e z%2&8KYF|Neda#wk#<*A}nBj}|&!?Xc{9{h&DEv+NV>DDAm{`6mE~vSj!oeacE?FYD zHYJzWOttt1&fUHNQKJYcMgFMk1e-A13MEsvZ}1)fadJC<&lDObxm0fk4W8p58&j!L z$Kp*J%r)5JlIV+UbR)+?=Eof)Hj%N1RVY0SOEGvwjw-~56w|Ydx=-Oh&S+da%lPvT zjc_~D1aVbGHx1sf++3;`ybcTSfA_qkJ8#RLff=LLU}H`f6HRA;yVeOP8+mqwVFz;x zt_kQZGz9m5SQ-cVb)9}5?`GTXP5{a?YQo1ol?4=yojqb{wqhD4mggCpa`o_u?tWXi zlAFR?%k+c?GrCYq_~1rFPx#=?nw!F-3ZW_&QD82ag&Ky#hq62P?!oZ*gPMx5v#{u6 zp)T7~moamDmSJ>mf!=8X4LA!g$aiNsja=sI{J5<;H;>Nub{>C z3dFQkK0qg1us|4Ui;71eWdoO;Y8@vF7G%MKY~Ugb78Wd6AS{>0ZUZTQElLH{Z7NJB zj!|67_B_y3zz5Nksv$%Jvp-_$k8wD8aYNDM=*vcy=L>SvSTy<0n-Nqb!jXdk09O^YaXL+5lC z-m0W^F}-Ned_vS>n4+|&yMU09S30E2^PuY?R)ZtCu# zL|tY{34e(AA?(MO-MdYG2#;{eMri>shbFU?x(SF+h7m-yN*ZnXq0za2=|Pt8>@=MyIs;6X zOb_m2dJqj~nI0^NN0-Bc%TEugWuylQX1R0ngZi%J2cKJ3sBflQR(OO<)Hqn9sZ6nm zh$$du=ztZ|$|h?8!bZWGI-07Iumz1)I@4$kJXtY9ND$XhOxU>K$}U$=-4p0b}Y;Xe`f10L1ILjbQZBM}eg?~G|J@dM}7a^veLrgs&W?Vi8Ol|>; zMTdLDvcr|CmcAi{6-QYtjJ)b5L3wVe7I{Aqw z1oVwVFB&B{GzH`+BZ{_M9YG1`cGzLqv2DEwcXiRs?i2}O%#;v822zg;=n$@;Lo625 z9nU`=?0z+uHyTKe(GVmIu#7Zx5J0&ZKv4LX9kkI<8u%6WTxh<6Yo&uP@Vr?!_SBKs zSJ|vvVqbqcEdY4SfANJoG0j<`UnTmrXaIiuZMZwmxY@}l-$buE4Y8|?BcT+GCx_bC zlyxU1*PWOP&kcr0Am;|lvXf!BMZ~~dKFPA>j@_Z>3l$g7s01S+b)@CO))hyb$Gjt% z?<6X;L=FTmDi!b2lb_?K7JihG%|)Jc`$q=;Hn6Ke?urX1Ll>xxl|H@q6NOLMUCZlF{K-fJrOMr8(GGtD z3059ucE)3;*@^iEGp_@G6u?OEozuVNI4Ss9V(p-Tq7r@*$EG92hu=%8zUYAC^%m8X z`U?Dg?&7ceHgx;V&YZSb58|XPHZA<$QTSA36nUvSf36Wc8mIdcP!!WjtuXFdI7}>7 z!T|8prL^=?;=8K{ik*HdE3OmsU{y61*Wj;L95%HzaedNn#o`)8RC~zJ5*awL6}m1+ zFIWto8Ay;okRzG}R|?-tnJ#6z%nTNl>7e{@u0*G=#1<;V6-+z>2sB5780*m> zJm;U)Kp}R<tT<<<{@#uKVYqwo6S;sji zN_RoJ3lem)in}noF~dT_o|nOM10#QH+FC}m;w*`2 ziaom?;X&%b>!%<95>tmz&Zqpfbf>LiY(a40Va0N}Frh?TGWp|q|*p*=YJqfh3`)YE*ANJES<=DL) z?yD)s?k$rwmsLGw_0`0f^y+_oH7U+mo~oz-IkRhhHIuVpZ802n>fm`$O12u$p2x2G zLa5p{Rcz3HpqhvZFdjJ!c6I|2GwwA+R80⁣10TPT!N$_vG|FFo|1DXV?nyPZ-AA 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

Z#*^YQxVTl#lp85Dkt<`sD|s-HD8;5P=R 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�(Y0ocQseip&MdzmXHC$>C_tcgL zssSV$EhU=^)HP?&Envh&sVgwOzbV z)`6m&J?xOA*ncc2>Le6me-DKMpQxvqhU1=9lG0R?g@PW%P-9*+#-92v+|XPNWo|2- z6aFX)0aJm$;jk!M=k(s9(N~9&)}VHxx4H?l?T5cRMS)CreA5&ax6{ul(O-!YY?m-B zIo)EH@j_C$jN9qRLK9P1|mQAb&i!u_?m%Ju=Cd25gZdRcc!- z2qjW1vm=^LnqEO!FT*cq=pk}el4aY50rPeYUvJ=ir5i{(%7cM{YUi6o(tCh>k|b5~ z2M~|>DO~ewzkPkfXrRr)ks**2=UYW&zu6!7gzA1)UgD`6Mo=o!B&DStn3+5L#&ECP zqJB*R;eW??tyMnxhDaJ1c75yZF3png3C#81ZkpDQO!fiPuxPrwA90is3YHuU>H9B) zg)?+&oG)&Durh|%`qa1I!JhWkcVJ(uYT$g?;=}YB7m-%1vmN+6iKKMG?=7CR!`n$= z@hA7oo)@co(R)P)a|JX=W)9!xkB5B$Fa?8!n14AnQMIK^9gK^T*aHc5&`bRhAGPd4|1U=09-($zbjAO5W85VZ69GrztL9yW%5M}So4k( zww|z8^u7K8=*~j@WW}Ngm^{xg@P}%O6+@SA!(6RKsfRT0mGFJ^o$cz*gm3cQ9y0>h zq6~oI@V0;7C;f@bDBEeB3CM)C@fLTW)yQdP$8j)noC5~chmB}=_uUhy9 zk)i-er=8B3LKkEAG63~eU?qQBKL{xq*jINR<2`rO*906boU)h0AD@TeGL$>$3h{!^ z)N|asvdk3oE9q4im|3t)l(+b1Up58eYifU=hpvBC&k$IJ^hKYqesz+kgadYbr4|Nm zq_BwjAjH;E_^Aml{isEH?j342kFVR6QozR3lJ{`eptu{7`)2V05VWph--;{fw#F;y zi!}rm%4u997N&>Ha(RMvp@G3A=LpiqIv=F*8|#bSyaRL%(}49V8Wnw{(Qi4lp@!j% z4ex(@hf;Gl*hVr^9H#SbRMSGDlSP0qfWK#K88>tm+2Zq(8riL#UiuFWwJ8K)Eu-M( z0$knuCPHcWESA?zi_*Iu2>M*bQ$y!Y@`c>s5Qr?Kewn4aEn4^hl_#3jS!=)B>ch** zK*}yd^^ehBgXr=f;qBs@RHr}jg$JF(zq)@%&3V{~Hu!=6pOgDt))|RJ%fP#)?G3?> z7cfjza8hHGZVU#MSH>pS*GlhrVjQnDe2|eTflD@dmO#eNBtmfX0GGU!InjB5l?XdE zrpUNS+2j9La9a>4cq@1(ah4(xSo`G{D|it>y2jwoFYU={oMKf1i>xPa_dfv0~I z@1g7s(tWr-P#Y#!(Y{wckkpO%+3f*v_(?&lzt>#GUWj1ZN@(jG9Wo$2dsitq5$f}t zQ8+B9L;*}QvzL&rbQaPcnuSQ2WO*kZcZY6SPHyKXT_Ai>cWANzn(Gn7pY6w>z&erSILYLR{KAUmgo1HtO%xJQHHYG#p4`gR=xxXrak5s?zTefx)jos@r}b1g04 zG0u-NhlhFt?r;W_qRWr&Y2``2j049n(C_yJqC5~_sE#7Ndq3)<5i6u{Zz?(zGBjL3 z!iv6a^hu)(Ew*dLrl|+kOHiWDcjQnlTUQT{t6nW)rT>LUuOd>cfg}!``sg(uoFE-_ zxn$jh42eJ9_aSJijW5S(*x`SfX=5P7bVJBzXePd^$ya}(r5mhgx%Z$TO7-r<-dHbQ z8>}*!Sw}NypDz`7b-hFgP*~M?=@V_AVK_u~T1Joc-)d)IbF&E>`mwPD1oS<70dZ4l zUM{ zgiXlDWLq#3p#Zb&quK zZl%*~8-Zh_=4ZdPPmh0m;K5FFq;wN7z}_D{gO^McRZl+m6{umNKz~5)CUV2F`1PJ+ z%Z%vM+2z#d5{dFgAAfUj@;VFQ5D&WvmOI9i$`Nnj@2 zbFDxo8cNFtbP%nzjJ?Or@6(~A-BbCtg(L8O7X-%c6W#(jZOI+GdHI zspuC_KhtEiK!KO|kNue8hy3uj-h)JRwndrL^PBrUMB1_ra#y2Qy~#-SBNdeKo4I@^5U=8INcxEP zRh%xiKN^{Bkustg3VfVi!TR@0^`>1%O52?yemT@euiQ@`TUTFT&7lQmUwK`o5wi>A z!{|o$@bDfPnFtw*NMPo?84%rh>UVcE-mh6oKD2-7YTNcx>_Bv|ELkLQfxy<-OMe4O zPNDkTDl7AZNe%36PGG_A`(Qy1XH3EFlg$-9@4EOo2w%fOvpKwxr9crb+j$H+^p6MM()yrzL+%4Xrjui;;?skrdHhrHo2To%I-o#jQ6O zdzYpTKms6#?4{8~%sy7#CbvTrjZ{%kKS)M~WVnIDX8eE{%qP%6xXI5)#|R(R;|h*#*Y3gu7>N^Hkn|psY zRS|XYf8S3K@9tN`@zAi&MRO(RM{@`7DZW+s@WQ3 zI?~3vM3QmbgYxu}ywoPu<9SgQKYo8oaUF7T5>5;FmPIR?yxPtR;%x$gO}HG?J>%-! z@Q&5pcnSL0{WOf9Th7zebGe%+?0k8C#0960ZRu17OaiLMslE{=mL{5YjXL|wvfSBB z3BPzi=U_9!fx-;*Ckzz1p9hd>m<1k`TvZverU~NTWmI%6>+4ilFTq zc^K{Sd;k2Ysegugy%s&ueWHx9R$+RBGe(OMw|g_cLv{Ak%31%}L@Hx?7F<&if{#KY zdB}&XUri|Pl#Pg4_@Cg6)-?OX8q~dj){rDN05>de|AD(~O;=GKo1_Vw_(lgW`)drw_xOGPHmgrLFdG_w;Q0;r6 zC~pIx_-p8zypg&;Fr_#M|2=PjagmIIpRX3$*(#2m4lGbA2;lydp|V*WefDD1X_IaH z5I6lfn&2YOW@XvqxkNgl4UlRi+ z!FrDDQv(r_i2{g!e}Mr}99F4xRQ-x9-D&BINt&+I;+n9=GA~I%YxTKW^o9}y@nx%C( z#Io%Y`;NsSEr8iUf0(U|ExSFK|{qZ-1VLA|lFPOyXTophp(R;pMTkaOl?PGr+FB5};-@UETLzAw) zj-6-$z)~S|62>H1Snozb6F!etK6}a4%lQ5eOLcAVqrES?YXR5QqmG`-)wkL*nCmc6 zvNIt1amSrOvF=uhI&E zN(w2K>nJ~ln{0pmhctX(o*UgqMAo$)#AtXFshQbbtjXzqDnwysEOD&7laFIN;h<_h zu$0;CBQY@kJuiA6UlE%$n1eOtSMUJtPP)u+qrxo?he7b0s(({aL;p!s>}fsIzZVj-^Xihg-lLlEzcdI;ijhS8v{pL8o>pz zH-Jo8x@&)F;T!FB@drgdKYTwPbJ6Oo53A9=2O!0gg8JisIt@NNc;fya?wPH-G1(+v zdsxK|rkPa!_tzo2+IR>H7Q6#c)1zLgV>jyX0px)pe~wVg7lF72zvmfFFhUOsV-BLK z7K&3d%Z~4pf}I!lA(J4^Q9Al@rMG7~g#4^hUJ!p^)cA#Xz933s0xX$YS+fTc{dSYU zgEJ$RF|tX~X!lUiJY70nWG&sZR+I4IeWR2zl!_bQT2_H2 zB+h@|v3Uq@%^yR_^l9|xS1`+Lqw$^Wf|X?%oP(D$MiB5ot6~}QC{Zr4vi-`Eq01V$ zHQ5{3wgKM6Ve2KMiAEyvxAQl*38;@7Sd+@xZyw0YlNjA0E<>M_g`G?F!sLB5zPCKt`v9K=;+Tvv!dOI$l9J^x-L(h0^GKd=S za}{8`tAPkivMY=p^nJE%J=R4=aQX-_-2F5QP=*I=%Rt8VUfw348|P&hHW2$@Xq$gv z0w&(^CLB)!g9C8VH^chpx2&o!j)B!gpBqI;;BVL3+U>UbcEb08la_SSFTQmU^R@hp zASS;P*SZuZc*4T10`yCeXYsrchqI@`dyWi_-e zMh1B8VK*FO$cevs)!*H(pHZ(m!-O13*&K=C0dr_!0&(SkZCOE zj@6Fe^;B(O>y*`+rtde+;VklIpo*r6`bEzclM=K2+UYfC0z4I|MB*hJoESnK>z63r zQNjiH`8DmM51FT3I%9#Lq!{_MmBN;e6cXHTrKuaifofG|~U+<567mw*jdP>M4ox#AY0JHhF zoMEO$#$gbfNfEH@-LO{W1$jb1U8!FoxAMQzdtbl2DGxB}HtilH z!SajjDsUo83$WVRwhm<-eq72UV{hBac=Q4jPD5}6YzfVT1`DAAVN?kQ>f4d2ANP{F z*KQ*FYFOY+B}fpXQtyBFR@1=FgDRm?gBRPsz{+BmV+#&V_%^2SZCZz*H+EziHR8MrK=gSa*Ju?;s?9Pp(|bi=;2|?S4Wo0T^i&CB!ulFAwP`y30RSi(1~4g%VFawL^fyjlsRYY^xNNhit+jJw zyrd!LMSYGlJAR-_1rlibo0a@7FrM_W zxOwZywVr%YiBZdI?Nd7jD(g5T{YCSgTe1c;7Jj4WU61t_a(w6t`g{mV7qIsW6b zZRpN7-KYRORtA?G9`KQHdL!UA^l@l&K!jjorCB!BGj(0fTCV@xA4vr6D|7Hlkyp~x zevHcugjkU;l`hRqU4Fm;B9UPK|z zb~(3^>@}|OD>#w?<)OYrr(1duMfb{Kq)_Tqv@y=<>fWVHc<65m8|Vjn(h^?4mHd8A zEU&80ACO&pjWkwV=A)meX}Jk)8$nS{c$icPH02g|gp`z3<3?4Zrt(YD$?UEwYVl6W z=mvjMQ9o9ieCsa$3WVl;oD}S7Q!IPIb%G+dwNcqlS>tTD5F&#>>TaA+mePmd9^-Qx!@BnD|Ff{j z#CSIP3$jdLM#GZwj!Ci^d-e`&6S9$aE1!SQ?^EW?|5UQq@tYoCIj@R*qrh&>_<(e^ zolZb3NyxA@Y{D6W^r)f{!9-w9|KY>!bsb zB@ukt3zDLNr36K_AD0UBFv$2mv0{IJ$jOsgavyJKgU7)Hh2;Yz^3jm@8p(4Cew|g7 z)$Lc0PndLmcJ_Q=_5iZQ$VMlCWAyr4@X^f16&PFFYlb1^#St8^u@u}lXNs$H1%3-p z07c-4utih>rD(xy%HhJpqHMc2u^?kfs0YXSY0>bI&5hST%r~|V^C(f@fxm8A2EsCKj9r?**kYWUui1?EL!PwXz%L)r#BfD+0A60PNWiUU2L6G$mRX%$kYT zveqcrSPjAz$=zN0j(Ouqr-c3NDs{6=+Q^wk^ z-*JH^QVC_typ%5xE&%!G$3%nF$XPL9czlF20EApDE|Jr}zOnQn{^T?;u0k#zMNn(WNss}`{KJXrHQ-(KN^bSMoO1T2L zhx}yi6SX%I7qZ}M7}LD$ue#aAU&VhB>xU%(JI9KTFNStY zB4RqEIL!md8vP=d54cR-mVN{ETy6@#4L`>Xb?yWDWY7S)eT`?B@*({O=8{}YBCsB} zLyl-vOOrQzS2-eWA3o%ORuJ&~Cy(99>9}DFshU|9)R3dAn9az60p0$LQ8&iasAckA zKm!W?Px}*nKMH@DH}PE)Du@ePRq{Fd0@2jsm7)ZaCEzYi`#3!^G92j!K2up@@GwAV^+G>!9zo2)_$iD2Yhu zFKLkxgdn{PCUF_V2}8ghx1DhyvW7~eA)h7906ZMJetw6=E)i@UV(3~x>q25*1;VoZ8l*!n` zCY9b9wy%Eybvo#Q=59okclUlj$*Vs_0)pGmUdSvj!oLM1S724vULajB2GHx&P9R+~ zPr2Wf61jnzW;wrE2Q>}AA0Q(z#K~i;oRYd5EGjC{2PYVY_dC}8D&@8adhG#sBHhj9 zAcWl6$AWxRx^O)AE}Sc3X*lOCYK^9+Qj>}M)M{Y~%D!*V7|50>!t$cl0>*$Cwf_>B{%+TY zBHe%1II8>#Nd`!1Y~E~5nVHqoB?yBMgHDp+eBF^{B2y~Ur3o6wq3aNtG--y({R3oD zkSum974fm*`<%; zTQV)Xm!C85F%XC-3y3s6*&Uw(31=S0FfuUMHv`?iG{KnS7~yY@z@yv!`k!tovH~c| zYdQy&eV?P={s6o(vz1Ih$LZ{!iwJe=)WF%jMWgYN_dLSjpz1WDXZ=?nsm(3uIJmUX@P>IWYZ4D1kH z;@nRrCj#Cypx!YI%ih9|@o*(RJ(2#(#|@@gII~XTpuobPpHNy{Rh6?=LohVF5*gj% z_;`N%6)rE9GLTjAsvMQ-4Ik}VC*ObB4ru@@@dnAx(%hXrU6RrObdYk}7$A7ZEL!>@ zM(@i^TEEsCji(KPJ+8hYEV}0nlOI~G4Ob@1Kv^7?L)Y)jQOC89~l zZsR2qU*iHBo4KeG4^F&JQ(x$(+CGNE1F3*wLknv+n({*Bl?lTT&4t)%sIccqiT7_f?@u zQE|098LNLK(#O1e&bT-LWmOhksB_QafJC=!(Lq0&fK>TbaHIt$u5N$NzbEVsUSjh( z<=;55sXU}in&kZ^FK~`QN>U~ghcDH=GwNe7XGnV`2x<&TGWn53fdJ7`Z%E02JHw{{ zxuvT2+EN4^e=NJpR=FwE>kX z1sBb07h|V(OG6HfdJv%vm>jEFm{6aj)PXN1FrURamAS}1SsrW|&5>dYIs?InhBJd5 zk=wn_bJPd7QD`)5>Yx;)Lvo?KDL!Dk)e{n?FxZWtVyw!ZZC(wan_%KMP>ij3_;J~%v-scoLnC4+HYVRY4@TW_$iyuYYN^X= zYTx%}0X|{;d?vP--p+u5xa{At$)zG@mI7k1&Vj0Y48n3$VfyG$SfnwS`X(nI0}4qs83pet0a-2~}pSi&PhN4Qp4fqNDkm%nq#+ZTKL7aK_gPiO!Dq6zx&_gQs#Ty`kAnCx! z+}dVH%Vkt6jY(hRbX*V%7qyU(Ky-o+pR2ZP-ZQzfuMGS@i{kKPACE(#f1Xb z7&1b)5pWda>)Z?;fQ016_8_XeJljr;*l}VgVG4gQi8DmtQ%?+F|0TvRShcN?$^A9v zNDbfJQtL0b56X+CQ+0$j3Qwq*=5{jC>CZQacShVjwBZ@1GPMJ?kBrHpJQE8dW3AB# z43;!a8OIm>HnC>a7RtvtrYhsm1yh<>quWUtmk5(Oj9)ig6h6x!z_Ozp5#UCwM@RWFW zhRGgXIH1M6ZVfWL=iqLTqy}71TD4%;=F;mFCK-xHJ9dB+QxJSbEdm4F z*ssp#SS0xgTGVj%`oYE|n+Pw35nu|#&w+njE~V-TXmepmJX;9dyP;--PJUm=NcEV| zz%-h`7n!j@Na`SX?!o>;(4G&<6)P+DUl9%=^m~i>=V=(VVfWhEB^%7WN-IH*8B77X zzDLS8;*#*XuRlT!bkrRUGqHc+k6T=mJR0^*s9?<;CEM=rarpo@%+&`O=WB@KkEnmv z8bz|eqxwQ2Sy2kv)UN)U<5#l_;?h`BOkHC#Z_>4QuOxprxBJNrgE4)&`*)eSclJNxVuDlJA8Bf`vYvkfW2-Ee`)1`5A&^0***X05B+_(A%ws^vYS61%HVaKG zN2_|go0=1Qk_MhB^-EHjH$LO!bzwocpyZpx*tr_sdxK`;V2k1Nl1JkP*Xr=wzt(^6xWyUi$@xCu&A7< z^Lb^XkqO5R*?-`TJR7zEIKJTCW_I!pc!mkh3YW6DD6?(vYhYB5p;?~?iCt}P#MQ#`%X4O9>3sfwHbx>>+fO%)wjaTl7a*L0 zmMi122-FDl6-no6xdVSVul6g$DDm9|+}Qh{nK(ZDlcT}>L@a5^>ZCICq4H?`n(9r( z@O<@2?t+O!r0}9B%9i9ndgjqym&*FLZ1bh#$v2B%plxTrA)TUbBDEO38#mJM6lYj^ zI;{GQMk`Qa!VNCDmY_qGCuRc_53oOGWqw{p3l*hteF1xs*6@E3mFdE$O(Y25ma+;2 zG0fOV3`h0|EvY!kDufP_J}|uocLE5p>f553KLk@l^7S_FwG6Hgw|KMLPrEb&zMY8; z0Oou*rTxGOd+NSrSAqkeT$~g6*g`W>rm~o~hxUMZr)xm-LFIY0V6yytEcHu0;V-Cg zA0^(HtSq0qZtZ_A13SYpsyiz%E{SLoC&NfCjmh4UMhNpn~iW_r=ee6R`+{a%~;o?39^xIOuN zYvHp{EL;cG7JyRQ26Kc?Lr&2Q{mWUpK*7soY~P%X2ZStSMSeZ|zOOqMlpf=Z^Nh>L z>Jd$3^}B~Zf1*yAvziZ3Um8x&K_bjnu|5}LE>_`m7J(Hf zKaDBlr0d^rgJx+jweCJ?B>*k%1_s8dD9w11jjDg>N?ZgE)bh}G4LpI!i;5qKzJ}vS z(HRYF`56FOdTyMzAm}LIQw>W1c_20cA{3x`Afmog3l^BP0Ds=?u;H7TDT^YuMlP^9FY;)y!YXlz0zW1v_;_$ko%>~W*2?1gt0T4u-h5jua2gy0k za9n>KtHEq+4GjFw;ByDRw+XJ6PgIPA&C?hFv(lIN7Z~&fhVo1Z?M5JteiKFC}b9@?IhUnxeV0*7#Vu+Ri(qF-CwZ%lA=&2^$on$4*G6KIo4l13=7eHib>r74r z>KnzX@<4hgtv5>hTQG52dpL)c3_f6;Vqkyz@(C8tE!kz-RDJb&y8V3y=iGs5_nPDK z6}*BkmhtJp*8(x|!P_cZA@*<2klzXAX&6K~Ujx-u|3jz0Yn?d%oBz;gxL4p!e@U=J zy0Cg+_qR#q8dyR;xQ{kaFUfNdUgWIeh332@`W4?MlJ76V7zj0?N!?pXGZu|Cx2k_4 zA^bWFRtFtABJ3=i;xFLCBuKz4JVi>mkuPWteZ3AuofkVlj2=OVo@;ZFh)?Nmd zab3Q3PS^2s`&eC!AZHqU=U{EI=}v!|_W+m!0;D}Mr{8g1v;$EYANYbl^~=~>c$z z6!Q*XzXLBjK#Y**j%M$$V-J5+UY=}6p>^lNH^}a(Y4iA#T|Ain>|FhGro5kwa=zcw zxYA%pzuiGiv79?$ZATDvYvgjl)$Iq|V`@ydHJp%U1I4x-Y`B9q$yY9?&$U%~zPfMX zO{*<1Bx&gVz8{aAM2bvG>==O)GypY7md&zkhOsEFK^n^L?Fp(zswjU&1(KUxvIm6e zvsBBoJ^*oaAnK}00^&^@q23Tra)EFg61MxoWT~hlYU0_IkAfqBJM?oJtbaqn;{0B@ zzigF8)HzvB8N)HmB~Bk1BHe|zm^n#pX}#h8AdSTnZO;d-@;N^|0IF$upSMBePV4!> zmr_>p%GGULm0yj@iGqLq_<1R@z<%^AKCc?FflYh58FENd?d8#$N=*)3vw-P*QLU*U zJ|3=96FsOj>>TPZ)}VId#7ZoO0aEq>wp$b%={*PvSA!0l>;qg0?;`0XyufA!t^sSe zTb&m!qBxKq0{e`*JcKObB+!v*c4E!5O`yLUQ5~iLx_kOo$R~fTi5|+DXot3H7;Y4n z%;Wojp8+Iy4$30#RN15Ud5 zi;B%o>s|&ru>7Jz90!MteEWcpjj7ZL7Pj(YO(wI}e)Ng`((^vgE#Fivs1ujCW{NMs z>4TxY0=jxRgCc+ay4PX#)BUFw60+}gYZ4q>wfZVRC-$fJsNns&59C)c53QLajh7eu z_tBRGH$yOG167?hL<&iV4XC4p$`-X!!te|ATTbIq$Osk+7wJ6TPY%ON;k~1PKVfE+ zW3arK>@8qmER*Q6VCxdZTA=wf1q@f%4nYLEoAO{Xa(I6n!T}jexG*0SMJZkd;K79C zghnY4uwgjp9(D_1iN{IeC?gn3_);}RC;mjV#EvS0jL_$K3D z{CIJ;@v%cQU^Txlkww`X=Rlv{Mm#QDRFrw@A4YTTqu=Ue6JUPhG0}Mrm`9Q1N+@Ur z1Z_5bf~$Wg@#ktDhy>6sYk}HB<{7x)$B2E`Q>XU9KU6pss9$yWvWX|=j~_#TFkBh~ zc8(QXn-HAyOHT#jSq>dO?6;cm3ks%>V4aRk@Xqwp?Y-;2Y-JBh>FqtuYQ4n8c%esHdf$}y{{#U z!S%jg8@V*oca5Z4fI;2b*?z)`;+)tsHcNCN)$4T=;`M;h)NBW$g3-YQ>#8vWIR zOHKscpdcVF0um*=pg(p|9)+tc89ewa^SPnL)1-1EA>V9YA36SIpZuqZR#is?TeqyY zbZ>tfD}T(*0~?uuC+PbM=!T8AcQayOb#?h0C=uUb4RV1Y4<7%axzsQ>))f7fka^e? z%DV^Njb5SGSO)S^x(!?Z=zx7*0TVlOM+YQiN=*PdvCea%XYIoE2-8teuIM1s5-d=BSch^0kHUYZbk5Pgd2cqa>O%5jp!@v3}v0pQ;}Y5;Zk7a3@z2DchsIE;^XU&BkJFJ`%nF$qmX znUQ26$(m%FL+~c3urSY$_Te)v2QB4JdJa`s^_fTOilZ7?VG)ceV&bQ*q==avVtjwK z0;HhDhbw3Sqm>s2rE6cg@5p?#Myg*}(4#RgFct4Z4DpbKwg2%V(2(sUqrNuyd(z*h z&{S|mOhEpWol}W&Af5$(BQ_xXjWB%VGt)B+r3`#U!>SCnnRxlHugB#cdRT)RiAmnQ zUiy`PyKql;m*sji0o`9s2`8#`jXZzR`x6wnbj8ufUYJhdgB$;A^y(byd`}472$!`| znQxy5ly{Le(ui{ynWgmj2wbkmJ@8JmZ?B>8c+*zDT#kHhKRDu<{<`yveho6!RWJit zPta`i6@S2LqzllV_SFNxZ1pRqwUiKEBc`1U*vi-#4w11f$XDF;l^^m5hYf$+$s0_4 zTbktviZfr3-BAs?qe@$aX#C=74yj#*yOx;x_=Eg? zuozf)XHl#m8_=K~;;I5j*JMbR`>gSB33gdBTpHr7lVG0SML|p}W$l{SkMuPy9=mW9 z2((>237%!??Y?CpLu)|t3~+y0$%&};-DV^MOSIU}AJ`DUIn$IJ!2BV*OIuVNr`cE^ zJ_d5Sp1eYaeZk1s7Lct2{;1conUe|_ynOG@VPlG30-x7JSK5X)X_LS;^fPBn^wB=OV7R!?s*+N%y>`nL;e$Riz>mkqz+SB3h z{482^7Avt8AX+;pc0?i0>-1UM>m4TuV-sh;F!8ON4-5~f*ttzTf@(1#;&gk*$I{pZ zRAVuigD~KVx*{$sUm#1*5PKX&=YtJ>9l}X+IVOR^2jVHFQPAZf9~#f^*)1&t*xWn@ z@kY89nE&J>cEgSb>L-6gI2Zo@X_Iu$`2Y}~Y2oHkzO!pH|J-LWopMLgLdkIqkPx~{ zNoPQK1*^Aa!NC>Zzpl}wUnWUjtiB}B(V~qP0x@Hot_Nm|N@tkeDvLWHGsY}J!dhV} zQ{=z<&C5>ZeBD|CgEMWQ6vVbJ1GgdRDyJ#J4-Ye6z>BborJPrS3g6SCZi0 zLw?AtaYGdJBgeephVTXMSJf)b*KhO!JKm~-fujr<=sOk_`!e9kb|AOUR=5fdRV-r} zaH#{53Yr69O^nrcI>ET726PXf>-I{gC=a58HC$HFLdARFZG9-7w(<-0{g5a!7`kKw z)QU|vH*F4)FeQJJ3;|6C0a!uGd~BN}D)Pc+@K|Ysg{6(AA2ofbvp2>RrS>kI5<8U$ zFjpO?TI{f$7<4%*@KIuZJZo5ktU?pu@9rPFLBBAzNLW}X1 z$zV@fySgX>+7Y{Rr_6EmI4-J&{`;~LRSEU%0~=_GhfsjrTV#-U{5F0O*rXl%kYeD? z;efOsoB@afOelY!yIna|eMs4fXEI2or;8!kj?ZnHUWjV}#L5t%n00KZUz-E9!$910tIJyH=z8g zmMN`lLKC3qiRyun`Yel30UQi<)82TOH$eBm{M^OOO$4C zuzvQ>O7gD?GGBbur_<}>AeKrO0P=(t?u$h;MIkPK1{cWC{q_phCXOz37g{7%WV z#ma8ryZVX$C~QHnM9lB$_j3wX&1;-C&J)<+f_9lIGeHmq-jYP%DU+dN+cuJXa-I2Q z0T7@GukY8wpU_(*7rH4VLl5eP~X;;t&yam+^(uWuR1F9DVau0l30wddF&gq^VjCO z=56?TKEJ{C+@6zN(w1wTVn5sk7=${Jlc_fmfDv=IqbE=syIr{Put@OwMm#G;U)p~! z5ZGHY+*?-y`|2Yh#9-^gLiVGxpwSNdu^SHY_qoZ%#J}-7?;UMNyYlA^BU_o+j1uH8 z*&J%bfV%d9$^vXhEcRy7Q-b&1FJ&(pJhB86`TnLcc^|p?fEl64$|H?;Nfoc4wn-Rl z^LY*uW3T2C#vw%cuZ;l+-C0w42{3;HIhb+( z%25AC(ij1AeQ|v$a7MukMuMO^H9yzWbAQ5Kzvkx^F_Hg%h>+TT`1i#Keuou)gFhWJ zadAxd=jqF`+%)*-W?;TjGt&c_8=8Ly5xtm~O*2oy+A8%<;Dq+&^CKzm+06*5ecBQq zAoh&{@zUp@QQyY#vts@*&Y*wCq&OPLtl@%~CuZy+{SmeYMu0Eb9XnuJ!eOYm9 zk}B?fpwF%|UA;?(o8vt1zND9rWUol7vhiy^GH7TSxXEN^Yg;VP)^>kb1R6q_0khws zFxQxnw51-6Y(1o*t^nxac8lJHATQ zbih##;>Ug-v>3jO9P2Ev@RFzZTl{?{U}M!ALat&V%Beeb^}2s*0e zH6U5MmxaEKkR@RiPCehyX<(|Whvz->94|^5=n@ORLCLPQp$`_~rgb7k3kVf*)E1i2 zJ$cL`nR70mj;}!57|N}0lr^0xp7-gcdR*Vy_5p(NGO!5>>NT%BMM(`bpkBs7+7c6F z%Dcgt?sP#=`{93p$*Fud<3V;i_8tztYH;Oi(E=G$co0Ao%VeC1jiclS+${I#*ZKM3 zyaLc*{$w8bmmf19ya_w@g12B^2|mzJ6>Xsh%JV`ej9-`V{w+b|w!!)0<6ng%a(8>rFS=zraEK~gk>dT-ryWIU;;Ldxn4qf4zYoR*FBI1y&pNzm zMa7ySVa0#ZV%%5skf#ZE98Ngc70?~s8e^3^tywrDG0so^Z>=YRXe&$+=_9;NS~SFOjGC9(d)K(ML? zjh(9@^Bb`j^Es?&P@PrC7HAXvOm?kk=DVVjw$Ohk3+l7z&x(p+fR!iHwj~Gou~r2i zJ?r24XJY%u!hV^9lVjs6Yu&!AsptB4s)=!`CC`;Df}&18!D@KpiMpx| z-45l>Afq%)1cH32biI{_CBykquy0^Rfg;oHCZa#<7a+nhhh~}r&PQM1oGZ;~F0ABI zN!5R!+{T<`$qMah!%O1>;qTO=-(_LIz~M^;<5IfPk3?)9r+)TIsbt)kv{GdMyIUr5 zQ-vudpOl#O)CQxyu5y+wEl#$zb^1F1B?NUXpD4A}t_rvuPmT<|UiRBASR_T6r*C;6 z9|fTP@=FH7v8`DI3Zrgv`JZ`CAlZlu;H-ZmxQuR&p?)%8Bs%4PLUYfEDzyH@Xb)?% zUGo)8;C?qfyt72ZG<4~@uGyNG-KQ5_!Fky^hOPdBhitTpLS;_`Zx;Y&=q&vXn!kb7 zaF!FG(jJQquk9?{FRQ$_*~4DZ`|H@r>vjbVM@LK8R0oZA8pxwRWaj`&T3=^Dj#+

bHF=KxdQ2sb4AE*pi>l!OeqO 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 DQDlcW diff --git a/Barotrauma/BarotraumaShared/Submarines/Orca.sub b/Barotrauma/BarotraumaShared/Submarines/Orca.sub index 803ea52cbc8b864c44eeacdaae7cfbed2d512adc..97f6fa3cd22c7a632a03fe6feebaa119e94cc638 100644 GIT binary patch literal 50476 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 literal 233950 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 diff --git a/Barotrauma/BarotraumaShared/Submarines/Orca2.sub b/Barotrauma/BarotraumaShared/Submarines/Orca2.sub index 744b20f4a822f9a932678a04c5f61e1d5d0f431d..d9a6efe4ec74c6d515c3fda5b318c2a8ca6b13e8 100644 GIT binary patch literal 55672 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 literal 241896 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

PIkOf9d~bg7BCHt+-eJAZgfj??=E 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

$=f!Ffeg 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≥SVcbriCR=?smj0U}5~v)d3-{Bz`|OI>C+%oJ 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 tiSP?MV6xI(-`njx diff --git a/Barotrauma/BarotraumaShared/Submarines/R-29.sub b/Barotrauma/BarotraumaShared/Submarines/R-29.sub index c35ec236ec285da00c556bc08f066c3a1abb8b7b..e463920484e580735f079ffa8392f5386a4cd2bc 100644 GIT binary patch delta 230222 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�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 delta 230251 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

AM3k&^CRVCQ$2#J38;x= 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 D2 diff --git a/Barotrauma/BarotraumaShared/changelog.txt b/Barotrauma/BarotraumaShared/changelog.txt index cbb8356d3..02fc875fe 100644 --- a/Barotrauma/BarotraumaShared/changelog.txt +++ b/Barotrauma/BarotraumaShared/changelog.txt @@ -1,3 +1,139 @@ +--------------------------------------------------------------------------------------------------------- +v0.16.0.0 +--------------------------------------------------------------------------------------------------------- + +Changes and additions: +- Added a medical clinic to outposts that allows you to heal your crew for a price. +- Added Barsuk, a small beginner-level sub. +- Added photoshop-like layers to submarine editor. +- Added some new decorative items and structures. +- Adjusted medical items' effects on bleeding and burns. Bandages, plastiseal and antibiotic glue are now much more effective at treating them, and morphine & fentanyl only heal them by a negligible amount. +- Heavily increased supercapacitor's power consumption and made the recharge speed increase exponentially when the recharge rate is increased. +- Optimizations to signal logic, status effects and property conditionals. +- Added "separator" property to Concat Component. +- Added "power_value_out" and "load_value_out" connections to junction boxes. +- Added "set_output" connection to Greater Than Component, Equals Component and Regex Component. +- Made alien materials spawn in abyss islands. +- Exposed wall healths in the sub editor. +- Modified Orca2 and R-29 reactor values so they're more in line with other subs. +- Made ballast flora toxins more visible and made them emit a sound. +- Health scanner doesn't show buffs from talents. +- Made impacts toss items around less effectively, especially when the item is heavy. +- Periscopes determine which turret to focus on using the trigger_out connection instead of position_out (making it easier to build circuits that switch which turret a periscope controls). +- Gave spinelings and threshers inventories (+ added alien blood as loot) to make it possible for "gene harvester" and "deep sea slayer" to spawn loot. +- Monsters' burns don't heal by themselves. +- "Allow rewiring" server setting doesn't affect wrecks, pirate subs or ruins. +- Added an option to disable all in-game hints to the hint message box. +- Option to make sonar displays center on the connected sonar transducer. +- Made the sizes of signal components consistent (32x32px, they also align to the grid now). +- Don't allow fabricators to take items from linked containers the user doesn't have access to. +- Connected diving suit lockers to oxygen in vanilla subs. + +AI: +- When quick-assigning orders, prioritize the characters with the same Operate order only when they are targeting the same item. +- When quick-assigning orders, don't prioritize characters with the same Maintenance order. Otherwise, Maintenance orders will always be quick-assigned to characters who already have the samer order. This will prevent giving out multiple Maintenance orders of the same type to multiple characters using the quick-assignment logic. +- Allow quick-assigning the same kind of Operate order to multiple characters. Previously, it would always be given to the character that already had the same kind of order. +- Fixed bots sometimes getting stuck while trying to fix a leak that's not in the same sub (e.g. bot in Remora and the leak in the drone). +- Fixed oxygen shards from old saves still being used as oxygen sources by bots. +- Fixed bots getting stuck in certain spots with ladders (e.g. Berilia's reactor room). +- Fixed contextual "clean up" order not being visible for weapons. +- Defined preferred containers for some items and added "locker" as the secondary preferred container for most items. Helps bots clean up things even when they can't find the primary container for the items. +- Fixed bots sometimes halting briefly next to a door when they shouldn't. +- "Fight intruders" order doesn't make the bots enter abandoned outposts to fight the enemies there. +- Disable aggressive behavior towards the player for the friendly crew members in single player (= accidental friendly fire never turns the security hostile in single player). +- Fixed bots saying they can't find items to load when someone takes an item they were targeting. +- Fixed bots saying they can't reach a leak when someone else fixes it before them. +- Fixed bots sometimes trying to adjust auto-controlled pumps when doing the autonomous Pump Water objective. +- Arrested pirate captains don't try to give orders to their crew. +- Change how captains (and theoretically other bots with an autonomous fight intruders order) behave: instead of idling around, they'll flee to the safety. And if there's no security officers around, they should fight the enemy aggressively. +- Fixed bots filling target containers with items that can't be refilled/recharged when given the Load Items order (e.g. putting welding fuel tanks in oxygen tank shelves). +- Made bots prefer the same fuel rods or ammo as already loaded when they're operating a reactor or a turret and need to find new ones. + +Bugfixes: +- Fixed equipping two of the same genetic material and then unequipping one of them removing all the genetic effects. +- Fixed "novice seafarer", "experienced seafarer" and "naval architect" achievements being possible to unlock even if cheats are enabled. +- Fixed kills in multiplayer sessions not progressing the "xenocide" and "genocide" achievements, and kills being reported to Steam unreliably. +- Fixed clients not spawning the respawn shuttle if they join after the server had disabled the shuttle mid-round, leading to an "entity not found" kick. +- Fixed medical effects being different when the medical item is fired with a syringe gun. +- Fixed fabricator sometimes desyncing in MP when some of the ingredients are in the user's inventory. +- Fixed clients trying to reconnect to SteamP2P indefinitely if establishing the initial connection fails, eventually leading to a crash. +- Fixed "allow linking wifi to chat" server setting causing syncing problems with headsets. The setting wasn't synced with clients who don't have settings management permissions, which would cause them to get some of the wifi components' properties mixed up and sometimes prevent them from communicating using the headsets. +- Fixed "unused talent points" indicator staying visible after all talents have been unlocked if the character's gained extra talent points from other talents. +- Fixed motion detector requiring the target's velocity to be higher than the specified minimum velocity, instead of higher than or equal. As a result, a minimum velocity of 0 would not sometimes detect targets in range. +- Fixed bots sometimes trying to put items they're cleaning up into containers inside fabricators/deconstructors (e.g. an oxygen tank into a diving suit in a fabricator). +- Fixed hammerhead matriarchs sometimes spawning in low-difficulty levels. +- Fixed bots equipping gene splicers when cleaning them up, causing the genetic material to get destroyed when the bot puts the splicer in a container. +- Fixed an exploit that allowed combining genetic materials in deconstructors. +- Fixed "fixitems" command setting genetic materials' condition to 100. +- Fixed "reset to prefab" not resetting wall healths. +- Fixed certain logic components not passing forwards the character who sent the signal, preventing e.g. the character who undocked a drone from being logged or the character who killed something from being determined if the signal activates a weapon. +- Orca 2: Fixed missing power wires to a couple small pumps, neutral ballast level, gunnery marked as wet room. Added a duct block between upper and lower deck. Some minor visual fixes. +- Fixed voronoi sites sometimes getting placed outside the level's bounds, leading to messed up level geometry. +- Fixed turrets always starting at rotation 0 at the beginning of the round (instead of halfway between the min/max angles like in the editor). +- Fixed incorrect talents sometimes unlocking server-side when unlocking "All-Seeing Eye". Happened because the server checked how many talents the client can unlock before applying All-Seeing Eye, which meant that the 3 extra talents would not be available, and the server would leave the last 3 talents unlocked. +- Fixed changing a delay component's delay using the editing hud not having an effect in-game when the component is receiving a continuous signal. +- Take structures/items with a collider into account when calculating a sub's dimensions (as opposed to just hulls). Fixes dimensions being incorrect in the submarine's info if the sub includes structures that extend far outside the hulls. +- Fixed crashing when swimming up from hull to another in a specific kind of hull configuration (two hulls side-by-side, with a gap leading up to another one). +- Fixed oxygen shards from old saves still being used as oxygen sources by bots. +- Fixed changes not being applied to all selected items when multi-editing a string field in the sub editor and deselecting the items without applying the changes by pressing enter. +- The game doesn't try to save a campaign if an exception occurs at any point during the saving process (should fix rare occurrences of campaign saves getting corrupted). +- Don't allow signals to deactivate ItemContainers. Fixes portable pumps' "toggle" input not working- +- Fixed "inspired to act" talent only giving a skill bonus of 9.98 instead of 10. +- Fixed removed items staying visible on the status monitor's electrical tab. +- Fixed plants still using the old values in old saves (i.e. dying too fast when not watered). +- Outposts can't request the "psychosisartifact_event" item (an event-specific special artifact that looks identical to the normal ones). +- Fixed size of a door's gap relative to the door changing when rescaling the door in the sub editor. +- Fixed fabricator consuming all the suitable ingredients when the ingredient is configured using a tag instead of an identifier (e.g. fabricating a stun gun dart would consume all the wires in the input slots). +- Fixed motion detector's detect offset getting mirrored when copying a mirrored detector. +- Fixed status monitor's submarine blueprint refreshing when initiating docking with a shuttle, instead of when the docking ports lock (sometimes causing the shuttle to appear slightly off from the docking port on the monito). +- Fixed fabricator failing to stack oxygenite tanks. +- Fixed "atmos machine" talent not spawning the alien pistol. +- Fixed items in the player's inventory not getting highlighted as valid ingredients when using a fabricator. +- Fixed fabricator failing to stack oxygenite tanks. +- Attempt to fix a rare crash caused by ScalableFont.DrawStringWithColors. +- Fixed freezing when trying to enable GameAnalytics from the settings menu on Mac. +- Fixed locked connection panel and non-interactable lights in R-29. +- Fixed Delay Component failing to parse set_delay inputs on systems that use comma as the decimal separator. +- Fixed charge rate not being displayed correctly on batteries in Chinese. +- Fixed junction box load not being displayed on status monitors in Russian. +- Fixed oxygen tanks being misaligned in oxygen generators. +- Fixed motion sensor not being able to detect subs in the sub editor test mode. +- Fixed recycled volatile fulgurium rods incorrectly using mechanical instead of electrical skill. +- Consider the character who severed a limb as the character who inflicted the afflictions caused by severing the limb. + Consider the character who caused bleeding as the character who caused the resulting bloodloss. Fixes achievements not unlocking if you kill a target by cutting its limbs off or by making it bleed to death. +- Fixed characters sometimes becoming momentarily unresponsive when swimming out from a hull. +- Fixed speed penalty caused by the vegetation in caves sometimes not disappearing after passing through the vegetation. +- Fixed links from a docking port to a linked sub not being considered valid in the sub editor (only a link from linked sub to a docking port). Now the order of the link doesn't matter. +- Fixed repair window showing up if you use a periscope wired to a broken device. +- Fixed sonar getting misaligned when switching to the docking mode (the amount of misalignment being relative to the distance of the docking port from the sub's center). +- Fixed "hazardous materials" considering any reactor outside the main sub a wreck reactor. +- Fixed light textures not rotating with the lamps in the sub editor. +- Fixed elements in CustomInterface getting misaligned if the signal_out connections aren't used in sequential order (e.g. if you only connect a wire to outputs 2 and 3). +- Fixed server including lines multiple times in the saved server logs (e.g. the 2nd saved log file would include some lines that were already saved to the 1st log file). +- Fixed ranged weapons (including turrets) triggering electrochemist's stun. +- Fixed initial husk infection message being displayed immediately after getting infected, not after the infection advances. +- Fixed equip slots being misplaced if you open the health interface when the equip slots have been hidden. +- Fixed wrecks sometimes not spawning in levels despite a wreck mission being selected. +- Fixed characters moving slowly downwards when aiming underwater. +- Fixed moloch shell shields not protecting the user from non-hitscan weapons or melee weapons. +- Fixed messed up mining crane sprite. +- Fixed crashing when pirates try to operate the sub using a nav terminal that doesn't control any sub (doesn't affect vanilla subs because they don't contain that kind of nav terminals). +- Fixed fabricator showing the info of the selected item wrong when selecting the fabricator with another character (e.g. fabrication time still calculated based on the previous user's skills). +- Fixed characters reading skillbooks upside-down. +- Fixed personality traits changing after every round in mp campaign. +- Fixed monsters always eating the character they're grabbing, even when the monster is configured as not being able to eat (in practice only happened when a player controlled something like a fractal guardian and grabbed another character). +- Fixed characters sometimes using the "priorities have changed" dialogue when giving a new order. +- Fixed pumps' auto-controlled status not being updated correctly. + +Modding: +- Added "HealCostMultiplier" attribute to AfflictionPrefabs that adjusts the heal cost in medical clinic. +- EntitySpawnerComponent treats positive y offset as up to make it more consistent with other components. +- Added an option to define a hard limit for how many entities EntitySpawnerComponent can spawn. +- Fixed "targetself" attack conditionals checking both the attacker and the target. +- Added "delaybetweenspawns" property to MonsterEvents (determines the delay between spawning the individual monsters of a given monster event). +- Don't allow setting an item's or limb's density to 0 (leads to "attempted to apply invalid force/torque" errors). +- Fixed shields blocking projectiles from the user's weapon. Didn't affect any vanilla items, because all the shields are 2-hand items that prevent using a weapon at the same time. +- Fixed ButtonTerminals without an ItemContainer component causing crashes. + --------------------------------------------------------------------------------------------------------- v0.15.23.0 --------------------------------------------------------------------------------------------------------- diff --git a/README.md b/README.md index 28678353b..99597222e 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Barotrauma -Copyright © FakeFish Ltd 2017-2021 +Copyright © FakeFish Ltd 2017-2022 Before downloading the source code, please read the [EULA](EULA.txt).

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±p6S99$>mGuDp7Wc%!Y=(@s_l=dWkmgz+Bh(K&Lu_MSqGQfs zB)IGV_^|tZ5~TH>kwI5`h$Zr61A+_SE^gaL0D7y6br{wYZN*c&7fn5a&I6dXbr;F- zzJF&h>UX)?G3dT1F?$H*<@Ke92xdcy8P5XVO4^FsyO{J|eK)YKlE_aGk1#gEulxV? zQ>YWFMdVBKYJeg0>BjF|v=nuBz#UQu>L`yZHEsI`^&`Vh0Ns@n&{oJ_roRc;E6OMU zwLt0~qw&xjG)D6Ls`Sj0CSg?V#e}QUr+@j&NA4xEVAn2v5y2To+-29DmnzP$)L=J7 zxKQa8U)}{^!WxZ{nBJx7q8V7yj>heB_=1>P$V|f^kYZ4>v#{dGC;YKMx|iIp*MWmH z%~ctlwJnf77QQ!uN!B_GlXV$sUJXc}y?;@_ z%qeJ}UaP9MA6oaDpX^p&GXeFz8gKN)t`6zOAHNFsDUf5qzyXCW(m=B=E(RkiFn?#t&m?t+e6=q{ zrSyvI^6>SmMTW(|V*K^L*%+^Q0R4gqA0x7$-y7)wW7!`srgda_uWu`gtBcw|@%{}2 zf^#|HaZujj5!c#II!=~j0i`<*cjo89UPW1qBXiOx4Ez(*t}L9kFbJ-XAb(qqCxx;c zuZYtmUpNpq#tMfS3b%*Hq8O}NAt{8 zIE&kCJgveSe{M3YM3XBGE+<0_yydse%X|+_Vn|-DKAmNx!@QTIYl-C2rUaD|7X6)B z&fYW~PpE`G!FxVO0xHxvfPe2^H@|Y$tnfO!P>4`8+Dr@%-5O(50YIkfPreg)D4 zpe9(TXz4;o&_;)0{1AOJgx>P1n&0= zp41@Qv)1plKAVGrA}dJGPDv5(V3z&bPI>)jqbc%)1pQl3j??8;d0*asGCNzLoDjF2 zI$@n{fd^JHM7B@Kj(=``*>Y;afMBI={~+ckEN#!n$w{KSdEe{h+?1~S=%2K@!_06; z^5#Ay33KJ=Exq`8cA}?!6z?rqv=3?Yctr-bZbgAndLtg~)q&SXEz)&oS!x?#&a)5=kbf6tp?HNkFd(2ZTso*Z zUmyCaGwsN@?6!fsqQmP=in;z*Ba~!Xh57?5>eq⋙QD@#KLt@()?UefX9|uDZLzE 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