public static int GetSelectedBottle(KEY select) { if ((select >= KEY.select_1) && (select <= KEY.select_32)) return (int)select; else return 0; }
public static int GetVolumeBottleNew(KEY select) { if (select == KEY.select_2) return 350; else if (select == KEY.select_3) return 500; else if (select == KEY.select_4) return 750; else if (select == KEY.select_5) return 1000; else return 0; }
/// <summary>Simulates a key release for the given key.</summary> /// <param name="luaState">Pointer to lua_State struct.</param> /// <param name="key">The key.</param> public static void InternalKeyCodeReleased(LuaState luaState, KEY key) { lock (SyncRoot) { lua_getglobal(luaState, nameof(gui)); lua_getfield(luaState, -1, nameof(InternalKeyCodeReleased)); lua_pushnumber(luaState, (double)key); lua_pcall(luaState, 1); } }
public static int SetCalibrationNew(KEY key, int num) { int value = num; if (num != 0) { switch (key) { case KEY.inc_1000: if ((value / 1000) < 1) value += 1000; break; case KEY.inc_100: if ((value / 100) % 10 < 9) value += 100; break; case KEY.inc_10: if ((value / 10) % 10 < 9) value += 10; break; case KEY.inc_1: if (value % 10 < 9) value += 1; break; case KEY.dec_1000: if ((value / 1000) > 0) value -= 1000; break; case KEY.dec_100: if ((value / 100) % 10 > 0) value -= 100; break; case KEY.dec_10: if ((value / 10) % 10 > 0) value -= 10; break; case KEY.dec_1: if (value % 10 > 0) value -= 1; break; } } return value; }
public static int GetVolumeBottleOwn(KEY key, int num, int maxVolume) { int thu = (num % 10000) / 1000; int hun = (num % 1000) / 100; int dec = (num % 100) / 10; int uni = num % 10; switch (key) { case KEY.inc_100: thu = (thu != 9) ? thu += 1 : 0; break; case KEY.inc_10: hun = (hun != 9) ? hun += 1 : 0; break; case KEY.inc_1: dec = (dec != 9) ? dec += 1 : 0; break; case KEY.dec_100: thu = (thu != 0) ? thu -= 1 : 9; break; case KEY.dec_10: hun = (hun != 0) ? hun -= 1 : 9; break; case KEY.dec_1: dec = (dec != 0) ? dec -= 1 : 9; break; } int result = 0; result += thu * 1000; result += hun * 100; result += dec * 10; result += uni; return (result <= maxVolume) ? result : maxVolume; }
public bool GetMouseDown(KEY key = KEY.LEFT) { return(_mouseDown[(int)key]); }
public bool GetMouseJustUp(KEY key = KEY.LEFT) { return(_mouseJustUp[(int)key]); }
public static void SetDateNew(KEY key) { switch (key) { case KEY.inc_100: // +day if (Menu.dayNew < GetDayMax(monthNew)) Menu.dayNew++; else Menu.dayNew = GetDayMax(monthNew); break; case KEY.inc_10: //+month if (Menu.monthNew < 12) Menu.monthNew++; break; case KEY.inc_1: // +year if ((Menu.yearNew % 100) < 99) Menu.yearNew++; break; case KEY.dec_100: // -day if (Menu.dayNew > 1) Menu.dayNew--; break; case KEY.dec_10: // -month if (Menu.monthNew > 1) Menu.monthNew--; break; case KEY.dec_1: // -year if ((Menu.yearNew % 100) > 0) Menu.yearNew--; break; } }
/// <summary>Returns the bind string that the given key is bound to.</summary> /// <param name="luaState">Pointer to lua_State struct.</param> /// <param name="key">The key.</param> /// <returns>The bind string of the given key.</returns> public static string LookupKeyBinding(LuaState luaState, KEY key) { lock (SyncRoot) { lua_getglobal(luaState, nameof(input)); lua_getfield(luaState, -1, nameof(LookupKeyBinding)); lua_pushnumber(luaState, (double)key); lua_pcall(luaState, 1, 1); return ToManagedString(luaState); } }
/// <summary> /// Returns whether the key is being held down or not. /// <para /> /// This function only works in Move hooks, and will detect key events even in main menu or when a typing in a text /// field. /// </summary> /// <param name="luaState">Pointer to lua_State struct.</param> /// <param name="key">The key.</param> /// <returns>Whether the key is being held down or not.</returns> public static bool WasKeyTyped(LuaState luaState, KEY key) { lock (SyncRoot) { lua_getglobal(luaState, nameof(input)); lua_getfield(luaState, -1, nameof(WasKeyTyped)); lua_pushnumber(luaState, (double)key); lua_pcall(luaState, 1, 1); return lua_toboolean(luaState) == 1; } }
public void run() { try { string[] keywords = textBox1.Text.Split(new string[] { "\r\n" }, StringSplitOptions.None); foreach (string keyword in keywords) { string key = System.Web.HttpUtility.UrlEncode(keyword, Encoding.GetEncoding("GB2312")); string Url = "http://tieba.baidu.com/f?kw=" + key; string html = method.GetUrl(Url, "utf-8"); if (html == null) { break; } MatchCollection ids = Regex.Matches(html, @"data-tid='([\s\S]*?)'", RegexOptions.IgnoreCase | RegexOptions.Multiline); ArrayList lists = new ArrayList(); foreach (Match id in ids) { lists.Add("http://tieba.baidu.com/p/" + id.Groups[1].Value); } foreach (string list in lists) { string strhtml = method.GetUrl(list, "utf-8"); string[] Keys = textBox2.Text.Split(new string[] { "\r\n" }, StringSplitOptions.None); foreach (string KEY in Keys) { label7.Text = list; if (strhtml.Trim().Contains(KEY.Trim())) { this.index = this.dataGridView1.Rows.Add(); this.dataGridView1.Rows[index].Cells[0].Value = index.ToString(); this.dataGridView1.Rows[index].Cells[1].Value = list; this.dataGridView1.Rows[index].Cells[2].Value = "是"; sendMsg(textBox3.Text.Trim()); } } while (this.zanting == false) { Application.DoEvents(); //如果loader是false表明正在加载,,则Application.DoEvents()意思就是处理其他消息。阻止当前的队列继续执行。 } } } } catch (System.Exception ex) { MessageBox.Show(ex.ToString()); } }
//================================================================================================================= static void ProcesingKey(KEY key) { switch (lcd.Screen) { //------------------------------------------------------------------------------------------------- #region MAIN MENU case SCREEN.mainMenu: switch (key) { case KEY.changeBottle: // change bottle if (DataCard.Role >= CardRole.ServiceBottle) { Menu.selectedBottle = 0; lcd.Screen = SCREEN.selectBottle1; lcd.Print(20, 20, 3, 1, "Bottle is not selected"); } else { lcd.Print(0, 0, 3, 4, " Access Denied "); Thread.Sleep(1000); lcd.Screen = SCREEN.mainMenu; } break; case KEY.changePrice: lcd.Print(0, 0, 3, 4, " Access Denied "); Thread.Sleep(1000); lcd.Screen = SCREEN.mainMenu; break; case KEY.changeCalibration: if (DataCard.Role >= CardRole.ServiceBottle) { Menu.selectedBottle = 0; lcd.Screen = SCREEN.selectBottle2; lcd.Print(20, 20, 3, 1, "Bottle is not selected"); } else { lcd.Print(0, 0, 3, 4, " Access Denied "); Thread.Sleep(1000); lcd.Screen = SCREEN.mainMenu; } break; case KEY.changeDate: // change date if (DataCard.Role >= CardRole.Service) { lcd.Screen = SCREEN.setDate; Menu.GetTimeDate(); lcd.PrintSettDate(Menu.dayNew, Menu.monthNew, Menu.yearNew); } else { lcd.Print(0, 0, 3, 4, " Access Denied "); Thread.Sleep(1000); lcd.Screen = SCREEN.mainMenu; } break; case KEY.changeTime: // change time if (DataCard.Role >= CardRole.Service) { lcd.Screen = SCREEN.setTime; Menu.GetTimeDate(); lcd.PrintSettTime(Menu.hourNew, Menu.minNew); } else { lcd.Print(0, 0, 3, 4, " Access Denied "); Thread.Sleep(1000); lcd.Screen = SCREEN.mainMenu; } break; case KEY.systemSetting: // system setting lcd.Print(0, 0, 3, 4, " Access Denied "); Thread.Sleep(1000); lcd.Screen = SCREEN.mainMenu; break; case KEY.systemLogger: // system logger lcd.Print(0, 0, 3, 4, " Access Denied "); Thread.Sleep(1000); lcd.Screen = SCREEN.mainMenu; break; case KEY.cleaning: // sanitace if (DataCard.Role >= CardRole.ServiceBottle) { lcd.Screen = SCREEN.clearing; lcd.Print(100, 40, 3, 1, " SANITACE "); } else { lcd.Print(0, 0, 3, 4, " Access Denied "); Thread.Sleep(1000); lcd.Screen = SCREEN.mainMenu; } break; case KEY.info: // info if (DataCard.Role >= CardRole.Service) { lcd.Screen = SCREEN.info; Thread.Sleep(10); Info(); } else { lcd.Print(0, 0, 3, 4, " Access Denied "); Thread.Sleep(1000); lcd.Screen = SCREEN.mainMenu; } break; } break; #endregion //------------------------------------------------------------------------------------------------- #region SELECt BOTTLE 1 case SCREEN.selectBottle1: switch (key) { case KEY.ESC: Menu.selectedBottle = 0; lcd.Screen = SCREEN.mainMenu; break; default: if ((int)key <= Settings.buttonNumber) { Menu.selectedBottle = Menu.GetSelectedBottle(key); lcd.Screen = SCREEN.selectVolumeBottle; // jdu na vyber objemu ProcesingKey(KEY.noKey); } else { lcd.Print(20, 20, 3, 4, "Absent bottle " + (int)key); Thread.Sleep(1000); } break; } break; #endregion //------------------------------------------------------------------------------------------------- #region BOTTLE CHNAGE case SCREEN.selectVolumeBottle: switch (key) { case KEY.ESC: Menu.selectedBottle = 0; lcd.Screen = SCREEN.selectBottle1; // navrat na vyber lahve Thread.Sleep(10); lcd.Print(20, 20, 3, 1, "Bottle is not selected"); break; case KEY.select_1: lcd.Screen = SCREEN.set3Number; // jdu na vyber objemu ProcesingKey(KEY.noKey); break; default: BottleData.Read(Menu.selectedBottle); Calibration.Read(Menu.selectedBottle); lcd.Print(20, 5, 2, 11, "Selected bottle is " + Menu.selectedBottle.ToString()); lcd.Print(20, 30, 2, 11, BottleData.name); //lcd.Print(300, 78, 2, 5, CommonFunc.StringPad(5, BottleData.volume / 10, true) + " L"); lcd.Print(20, 110, 2, 1, "Residue"); lcd.Print(20, 140, 2, 1, CommonFunc.StringPad(5, Calibration.residue / 10, true) + " L"); lcd.Print(20, 230, 3, 1, "Status: "); string status = "?"; switch (BottleData.isclosed) { case 0: status = "Unlocked "; break; case 1: status = "Change bottle "; break; case 2: status = "Blocked "; break; case 3: status = "Make calibration"; break; default: break; } lcd.Print(145, 230, 3, 1, status); break; } break; #endregion //------------------------------------------------------------------------------------------------- #region BOTTLE OWN RESIDUE case SCREEN.set3Number: switch (key) { case KEY.ENT: // web if (HttpSettings.ONLINE) { lcd.Screen = SCREEN.black; lcd.Print(20, 110, 3, 1, "Please wait, send data..."); HttpData.query = ("sn=" + Settings.sn.ToString() + "&event=202" + "&time=" + DateTime.Now.Ticks + "&pos=" + Menu.selectedBottle + "&ores=" + Menu.oldRes + "&nres=" + Calibration.residue); Hardware.Led_C.On(); new Thread(HttpSettings.Connect).Start(); int loop = 0; do { Thread.Sleep(100); loop++; } while (!HttpData.RESPONSE_OK && loop < HttpSettings.RequestTimeout); if (CHANGEBOTTLE_OK) { Calibration.Write(Menu.selectedBottle); if (HttpData.uniqueid != string.Empty) // potvrdim uniquedid { HttpSettings.Acknowledgement(); } } } Menu.selectedBottle = 0; lcd.Screen = SCREEN.selectBottle1; // a navrat Thread.Sleep(10); lcd.Print(20, 20, 3, 1, "Bottle is not selected"); break; case KEY.ESC: lcd.Screen = SCREEN.selectBottle1; break; default: if (key == KEY.noKey) { Menu.oldRes = Calibration.residue / 10; Calibration.residue = BottleData.volume; } else { Calibration.residue = Menu.GetVolumeBottleOwn(key, Calibration.residue, BottleData.volume); } lcd.Print(20, 5, 2, 11, "Selected bottle is " + Menu.selectedBottle.ToString()); lcd.Print(20, 30, 2, 1, "Residue " + CommonFunc.StringPad(5, Menu.oldRes, true) + " L"); lcd.PrintSettings(3, Calibration.residue / 10, "L"); break; } break; #endregion //------------------------------------------------------------------------------------------------- #region SELECT BOTTLE 2 case SCREEN.selectBottle2: switch (key) { case KEY.ESC: Menu.selectedBottle = 0; lcd.Screen = SCREEN.mainMenu; break; default: if ((int)key <= Settings.buttonNumber) { Menu.selectedBottle = Menu.GetSelectedBottle(key); BottleData.Read(Menu.selectedBottle); // pouze nazev Calibration.Read(Menu.selectedBottle); // hodnoty Menu.calibrationNew = Calibration.mililiter; lcd.Screen = SCREEN.set4Number; lcd.Print(20, 5, 2, 11, "Selected bottle is " + Menu.selectedBottle.ToString()); lcd.Print(20, 30, 2, 11, BottleData.name); lcd.Print(380, 80, 1, 1, "old time/ml "); lcd.Print(380, 95, 1, 1, ": " + Calibration.timeToMl + " ms"); lcd.PrintSettings(4, Menu.calibrationNew, "ml"); } else { lcd.Print(20, 20, 3, 4, "Absent bottle " + (int)key); Thread.Sleep(1000); } break; } break; #endregion //------------------------------------------------------------------------------------------------- #region CALIBRATION case SCREEN.set4Number: switch (key) { case KEY.ESC: Menu.selectedBottle = 0; lcd.Screen = SCREEN.selectBottle2; // navrat na vyber lahve Thread.Sleep(10); lcd.Print(20, 20, 3, 1, "Bottle is not selected"); break; case KEY.ENT: if (Menu.calibrationNew > 100) { Calibration.SetTime(CommonFunc.calibrationTime, Menu.calibrationNew); // nova kalibrace na kartu Calibration.Write(Menu.selectedBottle); // ulozim // web if (HttpSettings.ONLINE) { lcd.Screen = SCREEN.black; lcd.Print(20, 110, 3, 1, "Please wait, send data..."); HttpData.query = ("sn=" + Settings.sn.ToString() + "&event=203" + "&time=" + DateTime.Now.Ticks + "&pos=" + Menu.selectedBottle); Hardware.Led_C.On(); new Thread(HttpSettings.Connect).Start(); int loop = 0; do { Thread.Sleep(100); loop++; } while (!HttpData.RESPONSE_OK && loop < HttpSettings.RequestTimeout); // cekam max 3sec if (HttpData.RESPONSE_OK) { if (HttpData.uniqueid != string.Empty) // potvrdim uniquedid { HttpSettings.Acknowledgement(); } } } lcd.Screen = SCREEN.selectBottle2; // navrat na vyber lahve lcd.Print(20, 20, 3, 11, "Selected bottle is " + Menu.selectedBottle.ToString()); } else { lcd.Print(20, 30, 2, 4, "Incorrect values ! "); lcd.PrintSettings(4, Menu.calibrationNew, "ml"); } break; default: Menu.calibrationNew = Menu.SetCalibrationNew(key, Menu.calibrationNew); Calibration.SetTime(CommonFunc.calibrationTime, Menu.calibrationNew); // nova kalibrace lcd.Print(20, 5, 2, 11, "Selected bottle is " + Menu.selectedBottle.ToString()); lcd.Print(20, 30, 2, 11, BottleData.name); lcd.Print(380, 80, 1, 1, "new time/ml "); lcd.Print(380, 95, 1, 1, ": " + Calibration.timeToMl + " ms"); lcd.PrintSettings(4, Menu.calibrationNew, "ml"); break; } break; #endregion //------------------------------------------------------------------------------------------------- #region CLEANING case SCREEN.clearing: switch (key) { case KEY.ESC: lcd.Screen = SCREEN.mainMenu; // navrat do menu StopAllVent(); // vypnu ventily :-) sichr FromButton.Clear(); break; default: lcd.Print(100, 40, 3, 1, " SANITACE "); StopAllVent(); // vypnu ventily :-) sichr FromButton.Clear(); break; } break; #endregion //------------------------------------------------------------------------------------------------- #region DATE case SCREEN.setDate: switch (key) { case KEY.ENT: Utility.SetLocalTime(lcd.AdjustDateTime("date")); // ulozim do RTCC v LCD a local lcd.Screen = SCREEN.mainMenu; break; case KEY.ESC: lcd.Screen = SCREEN.mainMenu; // ESC break; default: Menu.SetDateNew(key); lcd.PrintSettDate(Menu.dayNew, Menu.monthNew, Menu.yearNew); break; } break; #endregion //------------------------------------------------------------------------------------------------- #region TIME case SCREEN.setTime: switch (key) { case KEY.ENT: Thread.Sleep(10); Utility.SetLocalTime(lcd.AdjustDateTime("time")); // ulozim do RTCC v LCD a local startTime = DateTime.Now.AddSeconds(1); poolTime = DateTime.Now.AddSeconds(Settings.POOL); lcd.Screen = SCREEN.mainMenu; break; case KEY.ESC: lcd.Screen = SCREEN.mainMenu; // ESC break; default: Menu.SetTimeNew(key); lcd.PrintSettTime(Menu.hourNew, Menu.minNew); break; } break; #endregion //------------------------------------------------------------------------------------------------- #region SYSTEM MENU case SCREEN.service: switch (key) { case KEY.ESC: lcd.Screen = SCREEN.mainMenu; break; case KEY.ENT: Settings.Write(); // ulozim na SD lcd.Screen = SCREEN.mainMenu; break; case KEY.dec_2: Settings.SetPosition("sub2"); PrintSettings(); break; case KEY.inc_2: Settings.SetPosition("add2"); PrintSettings(); break; case KEY.PREV: // prev Settings.SetIndexCurrency("dec"); PrintSettings(); break; case KEY.NEXT: // next Settings.SetIndexCurrency("inc"); PrintSettings(); break; } break; #endregion //------------------------------------------------------------------------------------------------- #region INFO case SCREEN.info: // info if (key == KEY.ESC) { lcd.Screen = SCREEN.mainMenu; // ESC } break; #endregion } } // end LCD key
private void EffectPush(int i, int tmp, KEY direct,int second=0) { int block = generate(tmp, i); int X = PB[block].Location.X; int Y = PB[block].Location.Y; int D = 15; switch (direct) { case KEY.LEFTKEY: { PB[block].Location = new Point(X - D, Y); break; } case KEY.RIGHTKEY: { PB[block].Location = new Point(X + D, Y); break; } case KEY.UPKEY: { PB[block].Location = new Point(X, Y - D); break; } case KEY.DOWNKEY: { PB[block].Location = new Point(X, Y + D); break; } } System.Threading.Thread.Sleep(second); PB[block].Location = new Point(X, Y); }
public static int newNum(KEY key, int num) { int thu = (num % 10000) / 1000; int hun = (num % 1000) / 100; int dec = (num % 100) / 10; int uni = num % 10; switch (key) { case Menu.KEY.inc_1000: thu = (thu != 9) ? thu += 1 : 0; break; case Menu.KEY.inc_100: hun = (hun != 9) ? hun += 1 : 0; break; case Menu.KEY.inc_10: dec = (dec != 9) ? dec += 1 : 0; break; case Menu.KEY.inc_1: uni = (uni != 9) ? uni += 1 : 0; break; case Menu.KEY.dec_1000: thu = (thu != 0) ? thu -= 1 : 9; break; case Menu.KEY.dec_100: hun = (hun != 0) ? hun -= 1 : 9; break; case Menu.KEY.dec_10: dec = (dec != 0) ? dec -= 1 : 9; break; case Menu.KEY.dec_1: uni = (uni != 0) ? uni -= 1 : 9; break; } int result = 0; result += thu * 1000; result += hun * 100; result += dec * 10; result += uni; return result; }
void CAPS(KEY key) { key.kb.Caps = !key.kb.Caps; key.mybutton.GetComponentInChildren <Image>().color = key.kb.Caps? Color.green : Color.white; }
public Vector3 GetMouseJustUpPos(KEY key = KEY.LEFT) { return(_mouseJustUpPos[(int)key]); }
public void Clear(KEY key) { key.kb.KeyboardText.text = ""; }
void Newest(KEY key) { ClearSearches(); RequestBot.COMMAND.Parse(TwitchWebSocketClient.OurTwitchUser, $"!addnew/top", RequestBot.CmdFlags.Local); }
public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) { //get the name before it's gone name = property.displayName; //get the X and Y values property.Next(true); NAME = property.Copy(); property.Next(false); KEY = property.Copy(); Rect contentPosition = EditorGUI.PrefixLabel(position, new GUIContent("")); //Check if there is enough space to put the name on the same line (to save space) if (position.height > 20f) { position.height = 20f; //EditorGUI.indentLevel += 1; contentPosition = EditorGUI.IndentedRect(position); //contentPosition.y += 18f; contentPosition.x += 0; } GUI.skin.label.padding = new RectOffset(3, 3, 6, 6); //show the X and Y from the point EditorGUIUtility.labelWidth = 14f; contentPosition.width = 90; //EditorGUI.indentLevel = 0; // Begin/end property & change check make each field // behave correctly when multi-object editing. EditorGUI.BeginProperty(contentPosition, new GUIContent(""), NAME); EditorGUI.PropertyField(contentPosition, NAME, new GUIContent("")); contentPosition.x += contentPosition.width; EditorGUILayout.BeginHorizontal(); for (int i = 0; i < KEY.arraySize; i++) { EditorGUI.PropertyField(contentPosition, KEY.GetArrayElementAtIndex(i), new GUIContent("")); contentPosition.x += contentPosition.width * .85f; } contentPosition.x += contentPosition.width * .15f; contentPosition.width = 20; if (GUI.Button(contentPosition, "+")) { KEY.arraySize++; } contentPosition.x += contentPosition.width; if (GUI.Button(contentPosition, "-")) { KEY.arraySize--; } EditorGUILayout.EndHorizontal(); EditorGUI.EndProperty(); }
public static void SetTimeNew(KEY key) { switch (key) { case KEY.inc_10: // +hour if (Menu.hourNew < 23) Menu.hourNew++; break; case KEY.inc_1: //+min if (Menu.minNew < 59) Menu.minNew++; break; case KEY.dec_10: // -hour if (Menu.hourNew > 0) Menu.hourNew--; break; case KEY.dec_1: // -min if (Menu.minNew > 0) Menu.minNew--; break; } }
public static int SetPriceNew(KEY key, int num) { int tth = (num % 100000) / 10000; int thu = (num % 10000) / 1000; int hun = (num % 1000) / 100; int dec = (num % 100) / 10; int uni = num % 10; switch (key) { case Menu.KEY.inc_10000: tth = (tth != 9) ? tth += 1 : 0; break; case Menu.KEY.inc_1000: thu = (thu != 9) ? thu += 1 : 0; break; case Menu.KEY.inc_100: hun = (hun != 9) ? hun += 1 : 0; break; case Menu.KEY.inc_10: dec = (dec != 9) ? dec += 1 : 0; break; case Menu.KEY.inc_1: uni = (uni != 9) ? uni += 1 : 0; break; case Menu.KEY.dec_10000: tth = (tth != 0) ? tth -= 1 : 9; break; case Menu.KEY.dec_1000: thu = (thu != 0) ? thu -= 1 : 9; break; case Menu.KEY.dec_100: hun = (hun != 0) ? hun -= 1 : 9; break; case Menu.KEY.dec_10: dec = (dec != 0) ? dec -= 1 : 9; break; case Menu.KEY.dec_1: uni = (uni != 0) ? uni -= 1 : 9; break; } int result = 0; result += tth * 10000; result += thu * 1000; result += hun * 100; result += dec * 10; result += uni; if (result > 65000) { return num; } return result; }
public static KEY GetKeyState(KEY key) { if (keyStateBefore[(int)key]==0 && keyStateNow[(int)key]==0) { return KEY.FREE; } else if (keyStateBefore[(int)key]==0 && keyStateNow[(int)key]==1) { return KEY.PUSH; } else if (keyStateBefore[(int)key]==1 && keyStateNow[(int)key]==1) { return KEY.HOLD; } else { return KEY.PULL; } }
private void Update() { var instance = GuideObjectManager.Instance; Vector2 vector = GetMousePos() - lastMousePos; if (mode == KEY.NONE && (instance.selectObjects == null || instance.selectObjects.Length == 0)) { return; } if (mode == KEY.OBJ_MOVE_XZ) { var delta = new Vector3(-vector.x, 0f, -vector.y); Move(delta); if (!StudioAddonLite.KEY_OBJ_MOVE_XZ.Value.IsPressed() || instance.mode != 0) { FinishMove(); mode = KEY.NONE; } } else if (mode == KEY.OBJ_MOVE_Y) { var delta2 = new Vector3(0f, vector.y, 0f); Move(delta2); if (!StudioAddonLite.KEY_OBJ_MOVE_Y.Value.IsPressed() || instance.mode != 0) { FinishMove(); mode = KEY.NONE; } } else if (mode == KEY.OBJ_ROT_X) { float num = (vector.x + vector.y) / 2f; var delta3 = new Vector3(num, 0f, 0f); Rotate(delta3); if (!StudioAddonLite.KEY_OBJ_ROT_X.Value.IsPressed() || instance.mode != 1) { FinishRotate(); mode = KEY.NONE; } } else if (mode == KEY.OBJ_ROT_Y) { float num2 = (vector.x + vector.y) / 2f; var delta4 = new Vector3(0f, num2, 0f); Rotate(delta4); if (!StudioAddonLite.KEY_OBJ_ROT_Y.Value.IsPressed() || instance.mode != 1) { FinishRotate(); mode = KEY.NONE; } } else if (mode == KEY.OBJ_ROT_Z) { float num3 = (vector.x + vector.y) / 2f; var delta5 = new Vector3(0f, 0f, num3); Rotate(delta5); if (!StudioAddonLite.KEY_OBJ_ROT_Z.Value.IsPressed() || instance.mode != 1) { FinishRotate(); mode = KEY.NONE; } } else if (mode == KEY.OBJ_ROT_X_2) { float delta6 = (vector.x + vector.y) / 2f; Rotate2(Vector3.right, delta6); if (!StudioAddonLite.KEY_OBJ_ROT_X_2.Value.IsPressed() || instance.mode != 1) { FinishRotate(); mode = KEY.NONE; } } else if (mode == KEY.OBJ_ROT_Y_2) { float delta7 = (vector.x + vector.y) / 2f; Rotate2(Vector3.up, delta7); if (!StudioAddonLite.KEY_OBJ_ROT_Y_2.Value.IsPressed() || instance.mode != 1) { FinishRotate(); mode = KEY.NONE; } } else if (mode == KEY.OBJ_ROT_Z_2) { float delta8 = (vector.x + vector.y) / 2f; Rotate2(Vector3.forward, delta8); if (!StudioAddonLite.KEY_OBJ_ROT_Z_2.Value.IsPressed() || instance.mode != 1) { FinishRotate(); mode = KEY.NONE; } } else if (mode == KEY.OBJ_SCALE_ALL) { Vector3 vector2 = GetMousePos() - beginMousePos; float num4 = (vector2.x + vector2.y) / 2f; Scale(Vector3.one * num4); if (!StudioAddonLite.KEY_OBJ_SCALE_ALL.Value.IsPressed() || instance.mode != 2) { FinishScale(); mode = KEY.NONE; } } else if (mode == KEY.OBJ_SCALE_X) { Vector3 vector3 = GetMousePos() - beginMousePos; float num5 = (vector3.x + vector3.y) / 2f; Scale(Vector3.left * num5); if (!StudioAddonLite.KEY_OBJ_SCALE_ALL.Value.IsPressed() || instance.mode != 2) { FinishScale(); mode = KEY.NONE; } } else if (mode == KEY.OBJ_SCALE_Y) { Vector3 vector4 = GetMousePos() - beginMousePos; float num6 = (vector4.x + vector4.y) / 2f; Scale(Vector3.up * num6); if (!StudioAddonLite.KEY_OBJ_SCALE_ALL.Value.IsPressed() || instance.mode != 2) { FinishScale(); mode = KEY.NONE; } } else if (mode == KEY.OBJ_SCALE_Z) { Vector3 vector5 = GetMousePos() - beginMousePos; float num7 = (vector5.x + vector5.y) / 2f; Scale(Vector3.forward * num7); if (!StudioAddonLite.KEY_OBJ_SCALE_ALL.Value.IsPressed() || instance.mode != 2) { FinishScale(); mode = KEY.NONE; } } else if (mode == KEY.NONE) { if (instance.mode == 0) { if (StudioAddonLite.KEY_OBJ_MOVE_XZ.Value.IsPressed()) { mode = KEY.OBJ_MOVE_XZ; oldPos = CollectOldPos(); } else if (StudioAddonLite.KEY_OBJ_MOVE_Y.Value.IsPressed()) { mode = KEY.OBJ_MOVE_Y; oldPos = CollectOldPos(); } } else if (instance.mode == 1) { foreach (var key in rotationKeys) { if (key.Value.IsPressed()) { mode = key.Key; firstTarget = GetTargetObject(); oldPos = CollectOldPos(); oldRot = CollectOldRot(); break; } } } else if (instance.mode == 2) { if (StudioAddonLite.KEY_OBJ_SCALE_ALL.Value.IsPressed()) { mode = KEY.OBJ_SCALE_ALL; oldScale = CollectOldScale(); beginMousePos = GetMousePos(); } else if (StudioAddonLite.KEY_OBJ_SCALE_X.Value.IsPressed()) { mode = KEY.OBJ_SCALE_X; oldScale = CollectOldScale(); beginMousePos = GetMousePos(); } else if (StudioAddonLite.KEY_OBJ_SCALE_Y.Value.IsPressed()) { mode = KEY.OBJ_SCALE_Y; oldScale = CollectOldScale(); beginMousePos = GetMousePos(); } else if (StudioAddonLite.KEY_OBJ_SCALE_Z.Value.IsPressed()) { mode = KEY.OBJ_SCALE_Z; oldScale = CollectOldScale(); beginMousePos = GetMousePos(); } } } else { Console.WriteLine("Unknown mode "); mode = KEY.NONE; } lastMousePos = GetMousePos(); }
public static int GetSelectedDose(KEY select) { if ((select >= Menu.KEY.select_1) && (select <= Menu.KEY.select_3)) return (int)select; else return 0; }
private void DrawBlock(int i, int tmp, KEY direct =0) { int block = generate(tmp, i); Application.DoEvents(); setimage(block, Table[i][tmp]); }