public void partDieEvent(Part part) { BeanCounter.LogFormatted_DebugOnly("---------- partDieEvent ------------"); // Get the launch that this part was from BCLaunchData launch = (from launchq in OATBeanCounterData.data.launches where launchq.missionID == part.missionID select launchq).SingleOrDefault(); if(launch == null) { BeanCounter.LogFormatted_DebugOnly("Could not find launch for missionID {0}", part.missionID); return; } // Get the VesselPartData for the part that died BCVesselPartData partdata = (from partq in launch.parts where partq.uid == part.flightID select partq).SingleOrDefault(); if (partdata == null) { BeanCounter.LogFormatted_DebugOnly("Could not find part for flightID {0}", part.flightID); return; } BCPartDestructionData destruction = new BCPartDestructionData(); destruction.time = HighLogic.CurrentGame.UniversalTime; partdata.status = BCVesselPartStatus.Destroyed; partdata.destruction = destruction; BeanCounter.LogFormatted_DebugOnly("--------- /partDieEvent ------------"); }