Beispiel #1
0
        public void Start()
        {
            ProviderActive = false;

            KSPit.AddToDeviceHandler(TargetProvider);
            targetChannel = GameEvents.FindEvent <EventData <byte, object> >("toSerial25");
        }
 public void Start()
 {
     KSPit.AddToDeviceHandler(AltitudeProvider);
     altitudeChannel = GameEvents.FindEvent <EventData <byte, object> >("toSerial" + OutboundPackets.Altitude);
     KSPit.AddToDeviceHandler(ApsidesProvider);
     apsidesChannel = GameEvents.FindEvent <EventData <byte, object> >("toSerial" + OutboundPackets.Apsides);
     KSPit.AddToDeviceHandler(ApsidesTimeProvider);
     apsidesTimeChannel = GameEvents.FindEvent <EventData <byte, object> >("toSerial" + OutboundPackets.ApsidesTime);
     KSPit.AddToDeviceHandler(OrbitInfoProvider);
     ortbitInfoChannel = GameEvents.FindEvent <EventData <byte, object> >("toSerial" + OutboundPackets.OrbitInfo);
     KSPit.AddToDeviceHandler(VelocityProvider);
     maneuverChannel = GameEvents.FindEvent <EventData <byte, object> >("toSerial" + OutboundPackets.ManeuverData);
     KSPit.AddToDeviceHandler(ManeuverProvider);
     velocityChannel = GameEvents.FindEvent <EventData <byte, object> >("toSerial" + OutboundPackets.Velocities);
     KSPit.AddToDeviceHandler(RotationProvider);
     rotationChannel = GameEvents.FindEvent <EventData <byte, object> >("toSerial" + OutboundPackets.RotationData);
     KSPit.AddToDeviceHandler(DeltaVProvider);
     deltaVChannel = GameEvents.FindEvent <EventData <byte, object> >("toSerial" + OutboundPackets.DeltaV);
     KSPit.AddToDeviceHandler(DeltaVEnvProvider);
     deltaVEnvChannel = GameEvents.FindEvent <EventData <byte, object> >("toSerial" + OutboundPackets.DeltaVEnv);
     KSPit.AddToDeviceHandler(BurnTimeProvider);
     burnTimeChannel = GameEvents.FindEvent <EventData <byte, object> >("toSerial" + OutboundPackets.BurnTime);
     // We fire one SoI packet when SoI changes. So no need to use the
     // periodic DeviceHandler infrastructure.
     CurrentSoI = "";
     soiChannel = GameEvents.FindEvent <EventData <byte, object> >("toSerial" + OutboundPackets.SoIName);
     //When SOIName channel is subscribed to, we need to resend the SOI name.
     GameEvents.FindEvent <EventData <byte, object> >("onSerialChannelSubscribed" + OutboundPackets.SoIName).Add(resendSOI);
     KSPit.AddToDeviceHandler(AirspeedProvider);
     airspeedChannel = GameEvents.FindEvent <EventData <byte, object> >("toSerial" + OutboundPackets.Airspeed);
     KSPit.AddToDeviceHandler(TempLimitProvider);
     tempLimitChannel = GameEvents.FindEvent <EventData <byte, object> >("toSerial" + OutboundPackets.TempLimit);
 }
Beispiel #3
0
        public void Start()
        {
            ARPWrapper.InitKSPARPWrapper();
            if (ARPWrapper.APIReady)
            {
                ARPPresent = true;
                KSPit.AddToDeviceHandler(LFProvider);
                LFChannel =
                    GameEvents.FindEvent <EventData <byte, object> >("toSerial10");
                KSPit.AddToDeviceHandler(LFStageProvider);
                LFStageChannel =
                    GameEvents.FindEvent <EventData <byte, object> >("toSerial11");
                KSPit.AddToDeviceHandler(OxProvider);
                OxChannel =
                    GameEvents.FindEvent <EventData <byte, object> >("toSerial12");
                KSPit.AddToDeviceHandler(OxStageProvider);
                OxStageChannel =
                    GameEvents.FindEvent <EventData <byte, object> >("toSerial13");
                KSPit.AddToDeviceHandler(SFProvider);
                SFChannel =
                    GameEvents.FindEvent <EventData <byte, object> >("toSerial14");
                KSPit.AddToDeviceHandler(SFStageProvider);
                SFStageChannel =
                    GameEvents.FindEvent <EventData <byte, object> >("toSerial15");
                KSPit.AddToDeviceHandler(MonoProvider);
                MonoChannel =
                    GameEvents.FindEvent <EventData <byte, object> >("toSerial16");
                KSPit.AddToDeviceHandler(ElectricProvider);
                ElectricChannel =
                    GameEvents.FindEvent <EventData <byte, object> >("toSerial17");
                KSPit.AddToDeviceHandler(EvaProvider);
                EvaChannel =
                    GameEvents.FindEvent <EventData <byte, object> >("toSerial18");
                KSPit.AddToDeviceHandler(OreProvider);
                OreChannel =
                    GameEvents.FindEvent <EventData <byte, object> >("toSerial19");
                KSPit.AddToDeviceHandler(AbProvider);
                AbChannel =
                    GameEvents.FindEvent <EventData <byte, object> >("toSerial20");
                KSPit.AddToDeviceHandler(AbStageProvider);
                AbStageChannel =
                    GameEvents.FindEvent <EventData <byte, object> >("toSerial21");

                ScanForResources();
            }
            else
            {
                ARPPresent = false;
                Debug.Log("KerbalSimpit: AlternateResourcePanel not found. Resource providers WILL NOT WORK.");
            }
        }
Beispiel #4
0
 public void Start()
 {
     KSPit.AddToDeviceHandler(AltitudeProvider);
     altitudeChannel = GameEvents.FindEvent <EventData <byte, object> >("toSerial8");
     KSPit.AddToDeviceHandler(ApsidesProvider);
     apsidesChannel = GameEvents.FindEvent <EventData <byte, object> >("toSerial9");
     KSPit.AddToDeviceHandler(ApsidesTimeProvider);
     apsidesTimeChannel = GameEvents.FindEvent <EventData <byte, object> >("toSerial24");
     KSPit.AddToDeviceHandler(VelocityProvider);
     velocityChannel = GameEvents.FindEvent <EventData <byte, object> >("toSerial22");
     // We fire one SoI packet when SoI changes. So no need to use the
     // periodic DeviceHandler infrastructure.
     CurrentSoI = "";
     soiChannel = GameEvents.FindEvent <EventData <byte, object> >("toSerial26");
     KSPit.AddToDeviceHandler(AirspeedProvider);
     airspeedChannel = GameEvents.FindEvent <EventData <byte, object> >("toSerial27");
 }
        public void Start()
        {
            RotationChannel = GameEvents.FindEvent <EventData <byte, object> >("onSerialReceived" + InboundPackets.VesselRotation);
            if (RotationChannel != null)
            {
                RotationChannel.Add(vesselRotationCallback);
            }
            TranslationChannel = GameEvents.FindEvent <EventData <byte, object> >("onSerialReceived" + InboundPackets.VesselTranslation);
            if (TranslationChannel != null)
            {
                TranslationChannel.Add(vesselTranslationCallback);
            }
            WheelChannel = GameEvents.FindEvent <EventData <byte, object> >("onSerialReceived" + InboundPackets.WheelControl);
            if (WheelChannel != null)
            {
                WheelChannel.Add(wheelCallback);
            }
            ThrottleChannel = GameEvents.FindEvent <EventData <byte, object> >("onSerialReceived" + InboundPackets.VesselThrottle);
            if (ThrottleChannel != null)
            {
                ThrottleChannel.Add(throttleCallback);
            }
            CustomAxisChannel = GameEvents.FindEvent <EventData <byte, object> >("onSerialReceived" + InboundPackets.VesselCustomAxis);
            if (CustomAxisChannel != null)
            {
                CustomAxisChannel.Add(customAxisCallback);
            }
            AutopilotChannel = GameEvents.FindEvent <EventData <byte, object> >("onSerialReceived" + InboundPackets.AutopilotMode);
            if (AutopilotChannel != null)
            {
                AutopilotChannel.Add(autopilotModeCallback);
            }

            SASInfoChannel = GameEvents.FindEvent <EventData <byte, object> >("toSerial" + OutboundPackets.SASInfo);
            KSPit.AddToDeviceHandler(SASInfoProvider);
            mySASInfo.currentSASMode      = 255; // value for not enabled
            mySASInfo.SASModeAvailability = 0;

            lastActiveVessel = FlightGlobals.ActiveVessel;
            FlightGlobals.ActiveVessel.OnPostAutopilotUpdate += AutopilotUpdater;
            GameEvents.onVesselChange.Add(OnVesselChange);
        }
Beispiel #6
0
 public void Update()
 {
     // We only need to register as a device handler if
     // there's an active target. So we keep a watch on
     // targets and add/remove ourselves as required.
     if (FlightGlobals.fetch.VesselTarget != null)
     {
         if (!ProviderActive)
         {
             KSPit.AddToDeviceHandler(TargetProvider);
             ProviderActive = true;
         }
     }
     else
     {
         if (ProviderActive)
         {
             KSPit.RemoveToDeviceHandler(TargetProvider);
             ProviderActive = false;
         }
     }
 }
 public void Start()
 {
     KSPit.AddToDeviceHandler(MsgProvider);
     _msgChannel = GameEvents.FindEvent <EventData <byte, object> >("toSerial" + _channelID);
     GameEvents.FindEvent <EventData <byte, object> >("onSerialChannelSubscribed" + _channelID).Add(forceSending);
 }
        public void Start()
        {
            ARPWrapper.InitKSPARPWrapper();

            if (ARPWrapper.APIReady)
            {
                Config.KerbalSimpitConfig config = new Config.KerbalSimpitConfig();

                if (config.CustomResourceMessages.Count >= 2)
                {
                    custom11ID = GetResourceID(config.CustomResourceMessages[0].resourceName1);
                    custom12ID = GetResourceID(config.CustomResourceMessages[0].resourceName2);
                    custom13ID = GetResourceID(config.CustomResourceMessages[0].resourceName3);
                    custom14ID = GetResourceID(config.CustomResourceMessages[0].resourceName4);

                    custom21ID = GetResourceID(config.CustomResourceMessages[1].resourceName1);
                    custom22ID = GetResourceID(config.CustomResourceMessages[1].resourceName2);
                    custom23ID = GetResourceID(config.CustomResourceMessages[1].resourceName3);
                    custom24ID = GetResourceID(config.CustomResourceMessages[1].resourceName4);
                }
                else
                {
                    custom11ID = custom12ID = custom13ID = custom14ID = null;
                    custom21ID = custom22ID = custom23ID = custom24ID = null;
                }

                FoodID        = GetResourceID("Food");
                WaterID       = GetResourceID("Water");
                OxygenID      = GetResourceID("Oxygen");
                WasteID       = GetResourceID("Waste");
                LiquidWasteID = GetResourceID("WasteWater");
                CO2ID         = GetResourceID("CarbonDioxide");

                if (FoodID != null && WaterID != null && OxygenID != null && WasteID != null && LiquidWasteID != null && CO2ID != null)
                {
                    KSPit.AddToDeviceHandler(ResourceProvider);
                    resourceChannel = GameEvents.FindEvent <EventData <byte, object> >("toSerial" + OutboundPackets.TACLSResource);
                    KSPit.AddToDeviceHandler(WasteProvider);
                    wasteChannel = GameEvents.FindEvent <EventData <byte, object> >("toSerial" + OutboundPackets.TACLSWaste);

                    TACLSFound = true;
                    Debug.Log("KerbalSimpit: TACLS resources found. You can subscribe to the TACLS channels.");
                }
                else
                {
                    Debug.Log("KerbalSimpit: TACLS resources not found. I assume TACLS is not installed.");
                    TACLSFound = false;
                }

                if (custom11ID != null || custom12ID != null || custom13ID != null || custom14ID != null)
                {
                    KSPit.AddToDeviceHandler(Custom1Provider);
                    custom1Channel = GameEvents.FindEvent <EventData <byte, object> >("toSerial" + OutboundPackets.CustomResource1);
                    custom1Found   = true;
                    Debug.Log("KerbalSimpit: Custom1 resources available.");
                }
                else
                {
                    Debug.Log("KerbalSimpit: Custom1 resources not available as no resources were found.");
                    custom1Found = false;
                }

                if (custom21ID != null || custom22ID != null || custom23ID != null || custom24ID != null)
                {
                    KSPit.AddToDeviceHandler(Custom2Provider);
                    custom2Channel = GameEvents.FindEvent <EventData <byte, object> >("toSerial" + OutboundPackets.CustomResource2);
                    custom2Found   = true;
                    Debug.Log("KerbalSimpit: Custom2 resources available.");
                }
                else
                {
                    Debug.Log("KerbalSimpit: Custom2 resources not available as no resources were found.");
                    custom2Found = false;
                }
            }
            else
            {
                TACLSFound = false;
            }
        }