diff --git a/project/Terkoiz.Freecam/FreecamController.cs b/project/Terkoiz.Freecam/FreecamController.cs index f8e0e2b..d287bd4 100644 --- a/project/Terkoiz.Freecam/FreecamController.cs +++ b/project/Terkoiz.Freecam/FreecamController.cs @@ -13,7 +13,7 @@ namespace Terkoiz.Freecam private GameObject _mainCamera; private Freecam _freeCamScript; - private BattleUIScreen _playerUi; + private EftBattleUIScreen _playerUi; private bool _uiHidden; private GamePlayerOwner _gamePlayerOwner; @@ -24,14 +24,22 @@ namespace Terkoiz.Freecam [UsedImplicitly] public void Start() { - // Find Main Camera - _mainCamera = GameObject.Find("FPS Camera"); + // Get Main Camera + _mainCamera = GetLocalPlayerFromWorld().GetComponent().Camera.gameObject; if (_mainCamera == null) { FreecamPlugin.Logger.LogError("Failed to locate main camera"); return; } + // Get Player UI + _playerUi = Singleton.Instance.EftBattleUIScreen; + if (_playerUi == null) + { + FreecamPlugin.Logger.LogError("Failed to locate player UI"); + return; + } + // Add Freecam script to main camera in scene _freeCamScript = _mainCamera.AddComponent(); if (_freeCamScript == null) @@ -124,18 +132,6 @@ namespace Terkoiz.Freecam if (GetLocalPlayerFromWorld() == null) return; - // If we don't have the UI Component cached, go look for it in the scene - if (_playerUi == null) - { - _playerUi = GameObject.Find("BattleUIScreen").GetComponent(); - - if (_playerUi == null) - { - FreecamPlugin.Logger.LogError("Failed to locate player UI"); - return; - } - } - _playerUi.gameObject.SetActive(_uiHidden); _uiHidden = !_uiHidden; } @@ -240,7 +236,6 @@ namespace Terkoiz.Freecam { // Destroy FreeCamScript before FreeCamController if exists Destroy(_freeCamScript); - Destroy(this); } } } \ No newline at end of file diff --git a/project/Terkoiz.Freecam/FreecamPlugin.cs b/project/Terkoiz.Freecam/FreecamPlugin.cs index 1701eec..6479332 100644 --- a/project/Terkoiz.Freecam/FreecamPlugin.cs +++ b/project/Terkoiz.Freecam/FreecamPlugin.cs @@ -7,7 +7,7 @@ using KeyboardShortcut = BepInEx.Configuration.KeyboardShortcut; namespace Terkoiz.Freecam { - [BepInPlugin("com.terkoiz.freecam", "Terkoiz.Freecam", "1.4.2")] + [BepInPlugin("com.terkoiz.freecam", "Terkoiz.Freecam", "1.4.3")] public class FreecamPlugin : BaseUnityPlugin { internal new static ManualLogSource Logger { get; private set; } diff --git a/project/Terkoiz.Freecam/Terkoiz.Freecam.csproj b/project/Terkoiz.Freecam/Terkoiz.Freecam.csproj index d889f98..30f56ab 100644 --- a/project/Terkoiz.Freecam/Terkoiz.Freecam.csproj +++ b/project/Terkoiz.Freecam/Terkoiz.Freecam.csproj @@ -1,7 +1,7 @@  - net472 + net471 1.4.2 Terkoiz, Kobrakon, CWX https://dev.sp-tarkov.com/Terkoiz/Freecam