From 0db5ddbeab0ecb32b06c14cc2e12f7ed8231feac Mon Sep 17 00:00:00 2001 From: siimav Date: Sun, 20 Oct 2024 17:19:20 +0300 Subject: [PATCH] Implement fast partmodule lookup in one more spot --- src/RealAntennasProject/RACommNetVessel.cs | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/RealAntennasProject/RACommNetVessel.cs b/src/RealAntennasProject/RACommNetVessel.cs index d472d30..316bb35 100644 --- a/src/RealAntennasProject/RACommNetVessel.cs +++ b/src/RealAntennasProject/RACommNetVessel.cs @@ -77,11 +77,16 @@ protected override void OnStart() GameEvents.CommNet.OnNetworkInitialized.Add(OnNetworkInitialized); if (HighLogic.LoadedScene == GameScenes.TRACKSTATION) GameEvents.onPlanetariumTargetChanged.Add(OnMapFocusChange); - foreach (ModuleDeployablePart mdp in Vessel.FindPartModulesImplementing()) + foreach (Part p in vessel.parts) { - mdp.OnMoving.Add(OnMoving); - mdp.OnStop.Add(OnStop); + List modules = p.FindModulesImplementingReadOnly(); + foreach (ModuleDeployablePart mdp in modules) + { + mdp.OnMoving.Add(OnMoving); + mdp.OnStop.Add(OnStop); + } } + overridePostUpdate = true; electricChargeDef = PartResourceLibrary.Instance.GetDefinition("ElectricCharge"); }