diff --git a/QSB/Animation/NPC/CharacterAnimManager.cs b/QSB/Animation/NPC/CharacterAnimManager.cs index 24291324..c690fbdd 100644 --- a/QSB/Animation/NPC/CharacterAnimManager.cs +++ b/QSB/Animation/NPC/CharacterAnimManager.cs @@ -1,6 +1,7 @@ using QSB.Animation.NPC.WorldObjects; using QSB.WorldSync; using System.Linq; +using UnityEngine; namespace QSB.Animation.NPC { @@ -15,7 +16,7 @@ namespace QSB.Animation.NPC //MOVE : this is the wrong place to put this... move it to Conversations? QSBWorldSync.OldDialogueTrees.Clear(); - QSBWorldSync.OldDialogueTrees = QSBWorldSync.GetUnityObjects().ToList(); + QSBWorldSync.OldDialogueTrees = Resources.FindObjectsOfTypeAll().ToList(); } } } diff --git a/QSB/DeathSync/RespawnOnDeath.cs b/QSB/DeathSync/RespawnOnDeath.cs index 6f1c917f..2245fc35 100644 --- a/QSB/DeathSync/RespawnOnDeath.cs +++ b/QSB/DeathSync/RespawnOnDeath.cs @@ -3,7 +3,6 @@ using OWML.Utils; using QSB.Events; using QSB.Player; using QSB.Player.TransformSync; -using QSB.WorldSync; using QSB.Utility; using System.Linq; using UnityEngine; @@ -76,7 +75,7 @@ namespace QSB.DeathSync } else { - var allAstroobjects = QSBWorldSync.GetUnityObjects().Where(x => x.GetAstroObjectName() != AstroObject.Name.None && x.GetAstroObjectType() != AstroObject.Type.Satellite); + var allAstroobjects = Resources.FindObjectsOfTypeAll().Where(x => x.GetAstroObjectName() != AstroObject.Name.None && x.GetAstroObjectType() != AstroObject.Type.Satellite); var ordered = allAstroobjects.OrderBy(x => Vector3.SqrMagnitude(x.transform.position)); DeathClosestAstroObject = ordered.First().transform; } diff --git a/QSB/MeteorSync/MeteorManager.cs b/QSB/MeteorSync/MeteorManager.cs index 17f5aed7..1ebe6a72 100644 --- a/QSB/MeteorSync/MeteorManager.cs +++ b/QSB/MeteorSync/MeteorManager.cs @@ -1,6 +1,7 @@ using System.Linq; using QSB.MeteorSync.WorldObjects; using QSB.WorldSync; +using UnityEngine; namespace QSB.MeteorSync { @@ -17,7 +18,7 @@ namespace QSB.MeteorSync QSBWorldSync.Init(); QSBWorldSync.Init(); QSBWorldSync.Init(); - WhiteHoleVolume = QSBWorldSync.GetUnityObjects().First(); + WhiteHoleVolume = Resources.FindObjectsOfTypeAll().First(); Ready = true; }, 10); } diff --git a/QSB/OrbSync/OrbManager.cs b/QSB/OrbSync/OrbManager.cs index e04584fc..2689e6c0 100644 --- a/QSB/OrbSync/OrbManager.cs +++ b/QSB/OrbSync/OrbManager.cs @@ -25,7 +25,7 @@ namespace QSB.OrbSync { QSBWorldSync.OldOrbList.Clear(); NomaiOrbTransformSync.OrbTransformSyncs.Clear(); - QSBWorldSync.OldOrbList = QSBWorldSync.GetUnityObjects().ToList(); + QSBWorldSync.OldOrbList = Resources.FindObjectsOfTypeAll().ToList(); if (QSBCore.IsHost) { _orbs.ForEach(x => QNetworkServer.Destroy(x)); diff --git a/QSB/Player/TransformSync/PlayerTransformSync.cs b/QSB/Player/TransformSync/PlayerTransformSync.cs index 6dbd20dc..ee6d5852 100644 --- a/QSB/Player/TransformSync/PlayerTransformSync.cs +++ b/QSB/Player/TransformSync/PlayerTransformSync.cs @@ -40,7 +40,7 @@ namespace QSB.Player.TransformSync protected Quaternion _roastingRotationVelocity; private Transform GetStickPivot() - => QSBWorldSync.GetUnityObjects().First().transform.Find("Stick_Root/Stick_Pivot"); + => Resources.FindObjectsOfTypeAll().First().transform.Find("Stick_Root/Stick_Pivot"); public override void OnStartLocalPlayer() => LocalInstance = this; diff --git a/QSB/PoolSync/PoolManager.cs b/QSB/PoolSync/PoolManager.cs index 59edc022..d5b93fe5 100644 --- a/QSB/PoolSync/PoolManager.cs +++ b/QSB/PoolSync/PoolManager.cs @@ -1,4 +1,5 @@ using QSB.WorldSync; +using UnityEngine; namespace QSB.PoolSync { @@ -6,17 +7,17 @@ namespace QSB.PoolSync { protected override void RebuildWorldObjects(OWScene scene) { - foreach (var streaming in QSBWorldSync.GetUnityObjects()) + foreach (var streaming in Resources.FindObjectsOfTypeAll()) { streaming.gameObject.AddComponent(); } - foreach (var camera in QSBWorldSync.GetUnityObjects()) + foreach (var camera in Resources.FindObjectsOfTypeAll()) { camera.gameObject.AddComponent(); } - foreach (var platform in QSBWorldSync.GetUnityObjects()) + foreach (var platform in Resources.FindObjectsOfTypeAll()) { platform.gameObject.AddComponent(); } diff --git a/QSB/QSBNetworkManager.cs b/QSB/QSBNetworkManager.cs index 723ccbbb..10f0a2ad 100644 --- a/QSB/QSBNetworkManager.cs +++ b/QSB/QSBNetworkManager.cs @@ -161,7 +161,7 @@ namespace QSB DebugLog.DebugWrite("OnStartServer", MessageType.Info); if (QSBWorldSync.OldDialogueTrees.Count == 0 && QSBSceneManager.IsInUniverse) { - QSBWorldSync.OldDialogueTrees = QSBWorldSync.GetUnityObjects().ToList(); + QSBWorldSync.OldDialogueTrees = Resources.FindObjectsOfTypeAll().ToList(); } } @@ -291,17 +291,17 @@ namespace QSB { QSBWorldSync.RemoveWorldObjects(); QSBWorldSync.RemoveWorldObjects(); - foreach (var platform in QSBWorldSync.GetUnityObjects()) + foreach (var platform in Resources.FindObjectsOfTypeAll()) { Destroy(platform); } - foreach (var camera in QSBWorldSync.GetUnityObjects()) + foreach (var camera in Resources.FindObjectsOfTypeAll()) { Destroy(camera); } - foreach (var streaming in QSBWorldSync.GetUnityObjects()) + foreach (var streaming in Resources.FindObjectsOfTypeAll()) { Destroy(streaming); } diff --git a/QSB/QuantumSync/QuantumManager.cs b/QSB/QuantumSync/QuantumManager.cs index 97aed940..6fabcb17 100644 --- a/QSB/QuantumSync/QuantumManager.cs +++ b/QSB/QuantumSync/QuantumManager.cs @@ -42,7 +42,7 @@ namespace QSB.QuantumSync QSBWorldSync.Init(); if (scene == OWScene.SolarSystem) { - Shrine = QSBWorldSync.GetUnityObjects().First(); + Shrine = Resources.FindObjectsOfTypeAll().First(); } } diff --git a/QSB/RoastingSync/Events/MarshmallowEventEvent.cs b/QSB/RoastingSync/Events/MarshmallowEventEvent.cs index 75d78e31..d9ce46f0 100644 --- a/QSB/RoastingSync/Events/MarshmallowEventEvent.cs +++ b/QSB/RoastingSync/Events/MarshmallowEventEvent.cs @@ -3,7 +3,6 @@ using QSB.Events; using QSB.Messaging; using QSB.Player; using QSB.Utility; -using QSB.WorldSync; using System.Linq; using UnityEngine; @@ -67,7 +66,7 @@ namespace QSB.RoastingSync.Events var stick = player.RoastingStick; var stickTip = stick.transform.GetChild(0); - var mallowPrefab = QSBWorldSync.GetUnityObjects().First().GetValue("_mallowBodyPrefab"); + var mallowPrefab = Resources.FindObjectsOfTypeAll().First().GetValue("_mallowBodyPrefab"); var tossedMallow = Object.Instantiate(mallowPrefab, stickTip.position, stickTip.rotation); var rigidbody = tossedMallow.GetComponent(); diff --git a/QSB/SatelliteSync/SatelliteProjectorManager.cs b/QSB/SatelliteSync/SatelliteProjectorManager.cs index 3affdff9..dd90d4ad 100644 --- a/QSB/SatelliteSync/SatelliteProjectorManager.cs +++ b/QSB/SatelliteSync/SatelliteProjectorManager.cs @@ -1,5 +1,4 @@ using System.Linq; -using QSB.WorldSync; using UnityEngine; namespace QSB.SatelliteSync @@ -22,7 +21,7 @@ namespace QSB.SatelliteSync { if (newScene == OWScene.SolarSystem) { - Projector = QSBWorldSync.GetUnityObjects().First(); + Projector = Resources.FindObjectsOfTypeAll().First(); Projector._loopingSource.spatialBlend = 1f; Projector._oneShotSource.spatialBlend = 1f; } diff --git a/QSB/SectorSync/WorldObjects/QSBSector.cs b/QSB/SectorSync/WorldObjects/QSBSector.cs index 63b3ae51..aaf4f223 100644 --- a/QSB/SectorSync/WorldObjects/QSBSector.cs +++ b/QSB/SectorSync/WorldObjects/QSBSector.cs @@ -81,7 +81,7 @@ namespace QSB.SectorSync.WorldObjects } else if (QSBSceneManager.CurrentScene == OWScene.EyeOfTheUniverse) { - var shuttleController = QSBWorldSync.GetUnityObjects().First(); + var shuttleController = Resources.FindObjectsOfTypeAll().First(); if (shuttleController == null) { DebugLog.ToConsole($"Warning - Expected to find a EyeShuttleController for {AttachedObject.name}!", MessageType.Warning); diff --git a/QSB/ShipSync/ShipManager.cs b/QSB/ShipSync/ShipManager.cs index 9d008d31..d2b55251 100644 --- a/QSB/ShipSync/ShipManager.cs +++ b/QSB/ShipSync/ShipManager.cs @@ -61,9 +61,9 @@ namespace QSB.ShipSync } HatchInteractZone = HatchController.GetComponent(); - ShipTractorBeam = QSBWorldSync.GetUnityObjects().First(); - CockpitController = QSBWorldSync.GetUnityObjects().First(); - ShipElectricalComponent = QSBWorldSync.GetUnityObjects().First(); + ShipTractorBeam = Resources.FindObjectsOfTypeAll().First(); + CockpitController = Resources.FindObjectsOfTypeAll().First(); + ShipElectricalComponent = Resources.FindObjectsOfTypeAll().First(); var sphereShape = HatchController.GetComponent(); sphereShape.radius = 2.5f; diff --git a/QSB/Syncs/SyncBase.cs b/QSB/Syncs/SyncBase.cs index b991ea2f..3f67544d 100644 --- a/QSB/Syncs/SyncBase.cs +++ b/QSB/Syncs/SyncBase.cs @@ -28,7 +28,7 @@ namespace QSB.Syncs if (wantedSync == default) { DebugLog.ToConsole($"Error - _storedTransformSyncs does not contain type:{typeof(T)} under player {player.PlayerId}. Attempting to find manually...", MessageType.Error); - var allSyncs = QSBWorldSync.GetUnityObjects(); + var allSyncs = Resources.FindObjectsOfTypeAll(); wantedSync = allSyncs.First(x => x.Player == player); if (wantedSync == default) { @@ -100,7 +100,7 @@ namespace QSB.Syncs public virtual void Start() { - var lowestBound = QSBWorldSync.GetUnityObjects() + var lowestBound = Resources.FindObjectsOfTypeAll() .Where(x => x.NetId.Value <= NetId.Value).OrderBy(x => x.NetId.Value).Last(); NetIdentity.SetRootIdentity(lowestBound.NetIdentity); diff --git a/QSB/TimeSync/TimeSyncUI.cs b/QSB/TimeSync/TimeSyncUI.cs index 75e6981e..aa34eaf9 100644 --- a/QSB/TimeSync/TimeSyncUI.cs +++ b/QSB/TimeSync/TimeSyncUI.cs @@ -1,6 +1,5 @@ using OWML.Utils; using QSB.Utility; -using QSB.WorldSync; using System; using System.Linq; using UnityEngine; @@ -32,7 +31,7 @@ namespace QSB.TimeSync private void OnUniverseSceneLoad(OWScene oldScene, OWScene newScene) { _isSetUp = true; - var obj = QSBWorldSync.GetUnityObjects().First(); + var obj = Resources.FindObjectsOfTypeAll().First(); _canvas = obj.GetValue("_canvas"); _text = obj.GetValue("_text"); _canvas.enabled = false; diff --git a/QSB/Tools/ProbeTool/QSBProbeEffects.cs b/QSB/Tools/ProbeTool/QSBProbeEffects.cs index 2d549084..2992a17a 100644 --- a/QSB/Tools/ProbeTool/QSBProbeEffects.cs +++ b/QSB/Tools/ProbeTool/QSBProbeEffects.cs @@ -1,5 +1,4 @@ using QSB.Utility; -using QSB.WorldSync; using System.Linq; using UnityEngine; @@ -15,7 +14,7 @@ namespace QSB.Tools.ProbeTool private void Awake() { - _probe = QSBWorldSync.GetUnityObjects().First(x => gameObject.transform.IsChildOf(x.transform)); + _probe = Resources.FindObjectsOfTypeAll().First(x => gameObject.transform.IsChildOf(x.transform)); if (_probe == null) { DebugLog.ToConsole($"Error - Couldn't find QSBProbe!", OWML.Common.MessageType.Error); diff --git a/QSB/Tools/ProbeTool/QSBProbeLantern.cs b/QSB/Tools/ProbeTool/QSBProbeLantern.cs index a76275a6..ec94ff2b 100644 --- a/QSB/Tools/ProbeTool/QSBProbeLantern.cs +++ b/QSB/Tools/ProbeTool/QSBProbeLantern.cs @@ -1,5 +1,4 @@ using QSB.Utility; -using QSB.WorldSync; using System.Linq; using UnityEngine; @@ -23,7 +22,7 @@ namespace QSB.Tools.ProbeTool private void Awake() { - _probe = QSBWorldSync.GetUnityObjects().First(x => gameObject.transform.IsChildOf(x.transform)); + _probe = Resources.FindObjectsOfTypeAll().First(x => gameObject.transform.IsChildOf(x.transform)); if (_probe == null) { DebugLog.ToConsole($"Error - Couldn't find QSBProbe!", OWML.Common.MessageType.Error); diff --git a/QSB/Tools/ProbeTool/QSBProbeSpotlight.cs b/QSB/Tools/ProbeTool/QSBProbeSpotlight.cs index 013b74fd..4e9a17cc 100644 --- a/QSB/Tools/ProbeTool/QSBProbeSpotlight.cs +++ b/QSB/Tools/ProbeTool/QSBProbeSpotlight.cs @@ -1,5 +1,4 @@ using QSB.Utility; -using QSB.WorldSync; using System.Linq; using UnityEngine; @@ -17,7 +16,7 @@ namespace QSB.Tools.ProbeTool private void Awake() { - _probe = QSBWorldSync.GetUnityObjects().First(x => gameObject.transform.IsChildOf(x.transform)); + _probe = Resources.FindObjectsOfTypeAll().First(x => gameObject.transform.IsChildOf(x.transform)); if (_probe == null) { DebugLog.ToConsole($"Error - Couldn't find QSBProbe!", OWML.Common.MessageType.Error); diff --git a/QSB/WorldSync/QSBWorldSync.cs b/QSB/WorldSync/QSBWorldSync.cs index fc4ffbbf..457817bb 100644 --- a/QSB/WorldSync/QSBWorldSync.cs +++ b/QSB/WorldSync/QSBWorldSync.cs @@ -152,17 +152,12 @@ namespace QSB.WorldSync WorldObjects.RemoveAll(x => x is TWorldObject); } - public static IEnumerable GetUnityObjects() - where TUnityObject : MonoBehaviour - => Resources.FindObjectsOfTypeAll() - .Where(x => x.gameObject.scene.name != null); - public static void Init() where TWorldObject : WorldObject where TUnityObject : MonoBehaviour { RemoveWorldObjects(); - var list = GetUnityObjects().ToList(); + var list = Resources.FindObjectsOfTypeAll().ToList(); //DebugLog.DebugWrite($"{typeof(TWorldObject).Name} init : {list.Count} instances.", MessageType.Info); for (var id = 0; id < list.Count; id++) {