public GuiConnector(ExtendedInput exInput, UserListControl userList, HTMLChatHistory htmlChatHistory, KnuddelsClient client) { _exInput = exInput; _exInput.Enabled = false; _userList = userList; _htmlChatHistory = htmlChatHistory; _client = client; }
private void Update() { if (ExtendedInput.GetKeyDown(new KeyCodeExtended(KeyCode.H))) { if (running) StopAllCoroutines(); else StartCoroutine(SuborbitalUntargeted()); } }
void onRightClick() { Log.Info("ToolbarIconEvents.OnRightClick"); if (!ExtendedInput.GetKey(GameSettings.MODIFIER_KEY.primary)) { Log.Info("Calling savedHandler"); savedHandler(); } else { Log.Info("Mod key pressed, not calling savedHandler"); OnToolbarIconClicked.Fire(appButton); } }
private void IconClicked(EditorPartIcon icon, EditorIconEvents.EditorIconClickEvent evt) { Log.Info("IconClicked"); if (!ExtendedInput.GetKey(GameSettings.MODIFIER_KEY.primary) && !ExtendedInput.GetKey(GameSettings.MODIFIER_KEY.secondary)) { return; } Log.Info("Icon was clicked for " + icon.partInfo.name + " (" + icon.partInfo.title + "), icon.name: " + icon.name); _icon = icon; ShowPruneMenu(); evt.Veto(); // prevent part from being spawned }
private void IconHover(EditorPartIcon icon, bool hover) { Log.Info("IconHover, ExtendedInput.GetKey(GameSettings.MODIFIER_KEY.primary): " + ExtendedInput.GetKey(GameSettings.MODIFIER_KEY.primary).ToString()); if (HighLogic.CurrentGame.Parameters.CustomParams <JanitorsClosetSettings>().showMod || ExtendedInput.GetKey(GameSettings.MODIFIER_KEY.primary) || ExtendedInput.GetKey(GameSettings.MODIFIER_KEY.secondary)) { string mod = ModFilterWindow.FindPartMod(icon.partInfo); drawTooltip = true; if (hover) { tooltip = mod; } else { tooltip = ""; } } else { tooltip = ""; } }
public override void OnUpdate() { base.OnUpdate(); // Only run if the EVA'd Kerbal is the active vessel if (this.vessel == FlightGlobals.ActiveVessel) { // Toggle precision node if (GameSettings.PRECISION_CTRL.GetKeyDown()) { precisionControls = !precisionControls; if (precisionControls) { ScreenMessages.PostScreenMessage("Precision Controls: Enabled", 2f, ScreenMessageStyle.UPPER_CENTER); } else { ScreenMessages.PostScreenMessage("Precision Controls: Disabled", 2f, ScreenMessageStyle.UPPER_CENTER); } } // Toggle Rotate on Move if (GameSettings.SAS_TOGGLE.GetKeyDown()) { rotateOnMove = !rotateOnMove; } // Set pointer to KerbalEVA if (eva == null || this.vessel != FlightGlobals.ActiveVessel) { eva = FlightGlobals.ActiveVessel.GetComponent <KerbalEVA>(); } // Only process is this is current vessel and the eva pointer was set previously if (this.vessel == FlightGlobals.ActiveVessel && eva != null) { if (eva.JetpackDeployed) { if (origLinPower == 0f) { // Grab original values origLinPower = eva.linPower; origRotPower = eva.rotPower; origPropConsumption = eva.PropellantConsumption; } // Make sure this is set properly // GameSettings.EVA_ROTATE_ON_MOVE = rotateOnMove; // Determine current jetpack power if (precisionControls) { // precisionModePower = settings.defaultPrecisionModePower; currentPower = precisionModePower; } else { //jetPackPower = settings.defaultJetPackPower; currentPower = jetPackPower; } // Set the jetpack power and fuel consumption eva.linPower = origLinPower * currentPower; eva.rotPower = origRotPower * currentPower; eva.PropellantConsumption = origPropConsumption * currentPower; // Detect key presses Log.Info("Input.GetKey(settings.pitchDown): " + ExtendedInput.GetKey(settings.pitchDown).ToString() + " mod: " + ExtendedInput.GetKey(GameSettings.MODIFIER_KEY.primary).ToString()); if (ExtendedInput.GetKey(settings.pitchDown) && ((settings.modKeypitchDown == false && !ExtendedInput.GetKey(GameSettings.MODIFIER_KEY.primary)) || (settings.modKeypitchDown == true && ExtendedInput.GetKey(GameSettings.MODIFIER_KEY.primary)))) { EVAController.Instance.UpdateEVAFlightProperties(-1, 0, jetPackPower); } if (ExtendedInput.GetKey(settings.pitchUp) && ((settings.modKeypitchUp == false && !ExtendedInput.GetKey(GameSettings.MODIFIER_KEY.primary)) || (settings.modKeypitchDown == true && ExtendedInput.GetKey(GameSettings.MODIFIER_KEY.primary)))) { EVAController.Instance.UpdateEVAFlightProperties(1, 0, jetPackPower); } if (ExtendedInput.GetKey(settings.rollLeft) && ((settings.modKeyrollLeft == false && !ExtendedInput.GetKey(GameSettings.MODIFIER_KEY.primary)) || (settings.modKeyrollLeft == true && ExtendedInput.GetKey(GameSettings.MODIFIER_KEY.primary)))) { EVAController.Instance.UpdateEVAFlightProperties(0, -1, jetPackPower); } if (ExtendedInput.GetKey(settings.rollRight) && ((settings.modKeyrollRight == false && !ExtendedInput.GetKey(GameSettings.MODIFIER_KEY.primary)) || (settings.modKeyrollRight == true && ExtendedInput.GetKey(GameSettings.MODIFIER_KEY.primary)))) { EVAController.Instance.UpdateEVAFlightProperties(0, 1, jetPackPower); } } } } }
void Update() { bool disableShortcuts = EditorUtils.isInputFieldFocused(); if (!disableShortcuts && PluginKeys.PLUGIN_TOGGLE.GetKeyDown()) { SetActive(!Enabled); } if (Enabled) { bool b = (Mode == PluginMode.Parachutes); if (CoD.activeInHierarchy != b) { CoD.SetActive(b); } } else if (CoD.activeInHierarchy) { CoD.SetActive(false); } if (Enabled) { updateModuleLists(); addForces(); //EditorUtils.RunOnAllParts (addDragVectors); /* find the bottommost stage with engines */ int stage = 0; foreach (PartModule mod in engineList) { if (mod.part.inverseStage > stage) { stage = mod.part.inverseStage; } } LastStage = stage; /* Switching direction */ if (!disableShortcuts && Input.anyKeyDown) { if (ExtendedInput.GetKey(PluginKeys.TRANSLATE_UP)) { switchDirection(Direction.up); } else if (ExtendedInput.GetKey(PluginKeys.TRANSLATE_DOWN)) { switchDirection(Direction.down); } else if (ExtendedInput.GetKey(PluginKeys.TRANSLATE_FWD)) { switchDirection(Direction.forward); } else if (ExtendedInput.GetKey(PluginKeys.TRANSLATE_BACK)) { switchDirection(Direction.back); } else if (ExtendedInput.GetKey(PluginKeys.TRANSLATE_LEFT)) { switchDirection(Direction.left); } else if (ExtendedInput.GetKey(PluginKeys.TRANSLATE_RIGHT)) { switchDirection(Direction.right); } } } }
public State GetInputState() { switch (IState) { case State.Idle: if (ExtendedInput.isInputEntered()) { IState = State.Dragging; StartingPoint = ExtendedInput.GetPoint(); DraggedPoint = StartingPoint; if (startingPointIndicator) { indicatorPosition.x = StartingPoint.x; indicatorPosition.y = StartingPoint.y; indicatorPosition = Camera.main.ScreenToWorldPoint(indicatorPosition); indicatorPosition.z = 0f; startingPointIndicator.transform.position = indicatorPosition; startingPointIndicator.SetActive(true); } } break; case State.Dragging: if (ExtendedInput.isInputExited()) { IState = State.Release; } DraggedPoint = ExtendedInput.GetPoint(); break; case State.Release: StartingPoint = Vector2.zero; DraggedPoint = Vector2.zero; IState = State.Idle; if (startingPointIndicator) { startingPointIndicator.SetActive(false); } break; default: Debug.LogError("Unsupported input state"); break; } return(IState); }
public int GetInputStateEski() { if (IState == State.Dragging) { if (ExtendedInput.isInputExited()) // saldı ship i { IState = State.Release; Debug.Log("Stopped Dragging. Dragged Position : " + DraggedPoint); StartingPoint = Vector2.zero; DraggedPoint = Vector2.zero; //pulledEnoughForCancel = false; if (startingPointIndicator) { startingPointIndicator.SetActive(false); } //return (int)IState; } /* else if(Vector2.Distance(DraggedPoint, StartingPoint) < indicatorScale && pulledEnoughForCancel) // en başa çekere iptal etti * { * IState = State.Canceled; * * StartingPoint = Vector2.zero; * DraggedPoint = Vector2.zero; * * pulledEnoughForCancel = false; * * if (startingPointIndicator) * { * startingPointIndicator.SetActive(false); * } * * Debug.Log("Canceled Dragging."); * * return (int)IState; * }*/ DraggedPoint = ExtendedInput.GetPoint(); /* if(!pulledEnoughForCancel && Vector2.Distance(DraggedPoint, StartingPoint) > indicatorScale * 4f) * { * pulledEnoughForCancel = true; * }*/ } else if (IState == State.Idle && ExtendedInput.isInputEntered()) // çekmeye başladı { IState = State.Dragging; StartingPoint = ExtendedInput.GetPoint(); DraggedPoint = StartingPoint; if (startingPointIndicator) { indicatorPosition.x = StartingPoint.x; indicatorPosition.y = StartingPoint.y; indicatorPosition = Camera.main.ScreenToWorldPoint(indicatorPosition); indicatorPosition.z = 0f; startingPointIndicator.transform.position = indicatorPosition; startingPointIndicator.SetActive(true); } Debug.Log("Started Dragging. Starting Position : " + StartingPoint); } else if (IState == State.Release || IState == State.Canceled) { IState = State.Idle; } return((int)IState); }
internal void drawWindow(int id) { GUI.skin = modStyle.skin; GUILayout.BeginVertical(); GUILayout.Label("EVA Enhancements - Settings", modStyle.guiStyles["titleLabel"]); GUILayout.EndVertical(); GUILayout.BeginVertical(); scrollPos = GUILayout.BeginScrollView(scrollPos); GUILayout.Label("Default Jetpack Power: " + settings.defaultJetPackPower.ToString("P0")); float newJetPackPower = GUILayout.HorizontalSlider(settings.defaultJetPackPower, 0f, 1f); if (newJetPackPower != settings.defaultJetPackPower) { settings.defaultJetPackPower = newJetPackPower; settings.Save(); } GUILayout.Space(10f); GUILayout.Label("Default Precision Jetpack Power: " + settings.defaultPrecisionModePower.ToString("P0")); float newPrecisionJetPackPower = GUILayout.HorizontalSlider(settings.defaultPrecisionModePower, 0f, 1f); if (newPrecisionJetPackPower != settings.defaultPrecisionModePower) { settings.defaultPrecisionModePower = newPrecisionJetPackPower; settings.Save(); } GUILayout.Space(10f); string str; GUILayout.BeginHorizontal(); GUILayout.Label("Pitch Down", GUILayout.ExpandWidth(true)); KeyCodeExtended c = null; if (Event.current.isKey) { c = new KeyCodeExtended(Event.current.keyCode); } if (settingPitchDown) { GUILayout.Label("<Press any key>"); if (Event.current.isKey && c.ToString() != GameSettings.MODIFIER_KEY.primary.ToString()) { Log.Info("keyodeExtended: " + c.ToString() + ", primary: " + GameSettings.MODIFIER_KEY.primary.ToString()); settings.pitchDown = new KeyCodeExtended(Event.current.keyCode); settings.modKeypitchDown = ExtendedInput.GetKey(GameSettings.MODIFIER_KEY.primary); settings.Save(); settingPitchDown = false; } } else { str = settings.pitchDown.ToString(); if (settings.modKeypitchDown) { str = "Alt-" + str; } if (GUILayout.Button(new GUIContent(str), GUILayout.Width(125))) { settingPitchDown = true; } } GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); GUILayout.Label("Pitch Up", GUILayout.ExpandWidth(true)); if (settingPitchUp) { GUILayout.Label("<Press any key>"); if (Event.current.isKey && c.ToString() != GameSettings.MODIFIER_KEY.primary.ToString()) { settings.pitchUp = new KeyCodeExtended(Event.current.keyCode); settings.modKeypitchUp = ExtendedInput.GetKey(GameSettings.MODIFIER_KEY.primary); settings.Save(); settingPitchUp = false; } } else { str = settings.pitchUp.ToString(); if (settings.modKeypitchUp) { str = "Alt-" + str; } if (GUILayout.Button(new GUIContent(str), GUILayout.Width(125))) { settingPitchUp = true; } } GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); GUILayout.Label("Roll Left", GUILayout.ExpandWidth(true)); if (settingRollLeft) { GUILayout.Label("<Press any key>"); if (Event.current.isKey && c.ToString() != GameSettings.MODIFIER_KEY.primary.ToString()) { settings.rollLeft = new KeyCodeExtended(Event.current.keyCode); settings.modKeyrollLeft = ExtendedInput.GetKey(GameSettings.MODIFIER_KEY.primary); settings.Save(); settingRollLeft = false; } } else { str = settings.rollLeft.ToString(); if (settings.modKeyrollLeft) { str = "Alt-" + str; } if (GUILayout.Button(new GUIContent(str), GUILayout.Width(125))) { settingRollLeft = true; } } GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); GUILayout.Label("Roll Right", GUILayout.ExpandWidth(true)); if (settingRollRight) { GUILayout.Label("<Press any key>"); if (Event.current.isKey && c.ToString() != GameSettings.MODIFIER_KEY.primary.ToString()) { settings.rollRight = new KeyCodeExtended(Event.current.keyCode); settings.modKeyrollRight = ExtendedInput.GetKey(GameSettings.MODIFIER_KEY.primary); settings.Save(); settingRollRight = false; } } else { str = settings.rollRight.ToString(); if (settings.modKeyrollRight) { str = "Alt-" + str; } if (GUILayout.Button(new GUIContent(str), GUILayout.Width(125))) { settingRollRight = true; } } GUILayout.EndHorizontal(); GUILayout.Space(10); #if false GUILayout.BeginHorizontal(); newUseStockToolbar = GUILayout.Toggle(settings.useStockToolbar, "Use Stock Toolbar"); GUILayout.EndHorizontal(); if (newUseStockToolbar != settings.useStockToolbar) { settings.useStockToolbar = newUseStockToolbar; settings.Save(); } #endif GUILayout.BeginHorizontal(); // GUILayout.Label("NavBall follows Kerbal:"); settingsEvaNavballFollowsKerbal = GUILayout.Toggle(settings.evaNavballFollowsKerbal, "NavBall follows Kerbal"); if (settingsEvaNavballFollowsKerbal != settings.evaNavballFollowsKerbal) { settings.evaNavballFollowsKerbal = settingsEvaNavballFollowsKerbal; settings.Save(); } GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); // GUILayout.Label("NavBall follows Kerbal:"); settingsEvaHideNavballMarkers = GUILayout.Toggle(settings.evaHideNavballMarkers, "Hide Navball markers on EVA"); if (settingsEvaHideNavballMarkers != settings.evaHideNavballMarkers) { settings.evaHideNavballMarkers = settingsEvaHideNavballMarkers; settings.Save(); } GUILayout.EndHorizontal(); GUILayout.EndScrollView(); GUILayout.Space(25f); GUILayout.EndVertical(); if (GUI.Button(new Rect(windowRect.width - 18, 3f, 15f, 15f), new GUIContent("X"))) { showWindow = false; toolbarControl.SetFalse(false); } GUI.DragWindow(); }
/// <summary> /// Updates this instance. /// </summary> public void Update() { #region BugFix: v1.2 Transfer calc needs to update while the map view is closed if (!FlightGlobals.ready || !PatchedConicsUnlocked) { return; } if (_mechJeb2 != null && _advXfer != null) { CheckPorkchop(); } #endregion #region BugFix: v1.2 save or restore keybindings when the map view is opened or closed if (!MapView.MapIsEnabled) { if (_savedBindings) { RestoreBindings(); } return; } if (!_savedBindings) { SaveBindings(); } #endregion #region BugFix: v1.1 Cancel MechJeb node execution while time warping if (_mechJeb2 != null && ExtendedInput.GetKeyUp(key: new KeyCodeExtended(key: KeyCode.KeypadEnter))) { MechJebOperationExecuteNode(); } #endregion if (Math.Abs(value: Time.timeScale - 1f) > 0.1f) { return; } // SOI Warp if (ExtendedInput.GetKeyUp(key: new KeyCodeExtended(key: KeyCode.KeypadMultiply))) { if (orbit.patchEndTransition == Orbit.PatchTransitionType.ENCOUNTER || orbit.patchEndTransition == Orbit.PatchTransitionType.ESCAPE) { Msg(msg: "Warping to SOI change"); TimeWarp.fetch.WarpTo(UT: orbit.EndUT); return; // do not operate while in time warp } else { Msg(msg: "Warp To SOI transition is not currently possible."); } } _rightAlt = ExtendedInput.GetKey(key: RightAltKeyCodeExtended) || ExtendedInput.GetKey(key: RightCommandKeyCodeExtended); _rightCtrl = ExtendedInput.GetKey(key: RightCtrlKeyCodeExtended); _rightShift = ExtendedInput.GetKey(key: RightShiftKeyCodeExtended); // combine the modifier keys into a binary-coded integer var i = (_rightCtrl ? 1 : 0) | (_rightShift ? 2 : 0) | (_rightAlt ? 4 : 0); // assign the delta based on the modifier keys. Lookup-tables are much nicer than giant blocks of if conditions. _delta = ModKeyMap[i]; // call maneuver methods as needed, if MechJeb is installed. if (_mechJeb2 != null) { foreach (var maneuverKey in ManeuverKeys) { if (ExtendedInput.GetKeyUp(key: maneuverKey.Key)) { maneuverKey.Value(); // the maneuver method is in the value } } } // make sure a node exists if (!vessel.patchedConicSolver.maneuverNodes.Any()) { return; } foreach (var modifierKey in ModifierKeys) { if (!ExtendedInput.GetKeyUp(key: modifierKey.Key)) { continue; } modifierKey.Value(); // the modifier method is in the value UpdateNode(node: currentNode); } }