/// <summary> /// JoyButton with higher priority put in lower index, to ensure high priority button /// get processed first. /// </summary> /// <param name="jBs"></param> private void SortJoyButtonsByPriority(JoyButton[] jBs) { IList<JoyButton> tempList = new List<JoyButton>(); foreach (JoyButton jb in jBs) { if (tempList.Count == 0) { tempList.Add(jb); } else { bool jbInserted = false; for (int i = 0; i < tempList.Count; i++) { JoyButton _queuedJb = tempList[i]; //Always put the higher priority JoyButton ahead if (_queuedJb.Priority < jb.Priority) { tempList.Insert(i, jb); jbInserted = true; break; } } if(jbInserted == false) tempList.Add(jb); } } joyButtons = new JoyButton[tempList.Count]; tempList.CopyTo(joyButtons, 0); }
public Joypad(InputManager manager) { _buttons = new JoyButton[8]; for (var i = 0; i < 8; i++) { _buttons[i] = new JoyButton(manager); } }
// Methods. public void Initialize() { const Byte gameOffset = 100; GameState = new GameState(); Vector2 statePosn = new Vector2(5, 4 + Constants.GameOffsetY); Rectangle stateColl = new Rectangle(0, +Constants.GameOffsetY, gameOffset, gameOffset); GameState.Initialize(statePosn, stateColl); GameSound = new GameSound(); Vector2 soundPosn = new Vector2(725, 4 + Constants.GameOffsetY); Rectangle soundColl = new Rectangle(Constants.ScreenWide - gameOffset, 0 + Constants.GameOffsetY, gameOffset, gameOffset); GameSound.Initialize(soundPosn, soundColl); // Joystick controller. JoypadMove = new JoypadMove(); Vector2 jpPos = new Vector2(20, 300 + Constants.GameOffsetY); Rectangle jpColl = new Rectangle(-100, 180 + Constants.GameOffsetY, 400, 400); Rectangle jpBndl = new Rectangle(0, 280 + Constants.GameOffsetY, 200, 200); JoypadMove.Initialize(jpPos, jpColl, jpBndl); // Joystick fire button. const Byte fireOffsetX = Constants.FIRE_OFFSET_X; const Byte fireOffsetY = Constants.FIRE_OFFSET_Y; JoyButton = new JoyButton(); const Byte textSize = Constants.TextsSize; const Byte baseSize = Constants.BaseSize; Vector2 firePosn = new Vector2(Constants.ScreenWide - baseSize - (2 * textSize), Constants.ScreenHigh - Constants.GameOffsetY - baseSize - (1 * textSize)); Rectangle fireColl = new Rectangle(Constants.ScreenWide - fireOffsetX, Constants.ScreenHigh - Constants.GameOffsetY - fireOffsetY, fireOffsetX, fireOffsetY); JoyButton.Initialize(firePosn, fireColl); }
// Use this for initialization void Start() { anim = GetComponent <Animator>(); myRigidBody = GetComponent <Rigidbody2D>(); theSFXManager = FindObjectOfType <SFXManager>(); thePHM = FindObjectOfType <PlayerHealthManager>(); thePSP = FindObjectOfType <PlayerStartPoint>(); joystick = FindObjectOfType <Joystick>(); joybutton = FindObjectOfType <JoyButton>(); if (!playerExists) { playerExists = true; DontDestroyOnLoad(transform.gameObject); // Won't destroy player when switching scenes } else { Destroy(gameObject); } canMove = true; lastMove = new Vector2(0, -1f); // Beginning of game, player faces down }
public void setButton(int arrayoffset, int buttonid, buttonfunction butfunction, string mode1) { JoyButtons[arrayoffset] = new JoyButton() { buttonno = buttonid, function = butfunction, mode = mode1 }; }
void ProcessButtonEvent(JoyButton but, bool buttondown) { if (but.buttonno != -1) { // only do_set_relay uses the button up option if (buttondown == false) if (but.function != buttonfunction.Do_Set_Relay) return; switch (but.function) { case buttonfunction.ChangeMode: string mode = but.mode; if (mode != null) { MainV2.instance.BeginInvoke((System.Windows.Forms.MethodInvoker)delegate() { try { MainV2.comPort.setMode(mode); } catch { CustomMessageBox.Show("Failed to change Modes"); } }); } break; case buttonfunction.Arm: MainV2.instance.BeginInvoke((System.Windows.Forms.MethodInvoker)delegate() { try { MainV2.comPort.doARM(true); } catch { CustomMessageBox.Show("Failed to Arm"); } }); break; case buttonfunction.Disarm: MainV2.instance.BeginInvoke((System.Windows.Forms.MethodInvoker)delegate() { try { MainV2.comPort.doARM(false); } catch { CustomMessageBox.Show("Failed to Disarm"); } }); break; case buttonfunction.Do_Set_Relay: MainV2.instance.BeginInvoke((System.Windows.Forms.MethodInvoker)delegate() { try { int number = (int)but.p1; int state = buttondown == true ? 1 : 0; MainV2.comPort.doCommand(MAVLink.MAV_CMD.DO_SET_RELAY, number, state, 0, 0, 0, 0, 0); } catch { CustomMessageBox.Show("Failed to DO_SET_RELAY"); } }); break; case buttonfunction.Digicam_Control: MainV2.comPort.setDigicamControl(true); break; case buttonfunction.Do_Repeat_Relay: MainV2.instance.BeginInvoke((System.Windows.Forms.MethodInvoker)delegate() { try { int relaynumber = (int)but.p1; int repeat = (int)but.p2; int time = (int)but.p3; MainV2.comPort.doCommand(MAVLink.MAV_CMD.DO_REPEAT_RELAY, relaynumber, repeat, time, 0, 0, 0, 0); } catch { CustomMessageBox.Show("Failed to DO_REPEAT_RELAY"); } }); break; case buttonfunction.Do_Set_Servo: MainV2.instance.BeginInvoke((System.Windows.Forms.MethodInvoker)delegate() { try { int channel = (int)but.p1; int pwm = (int)but.p2; MainV2.comPort.doCommand(MAVLink.MAV_CMD.DO_SET_SERVO, channel, pwm, 0, 0, 0, 0, 0); } catch { CustomMessageBox.Show("Failed to DO_SET_SERVO"); } }); break; case buttonfunction.Do_Repeat_Servo: MainV2.instance.BeginInvoke((System.Windows.Forms.MethodInvoker)delegate() { try { int channelno = (int)but.p1; int pwmvalue = (int)but.p2; int repeattime = (int)but.p3; int delay_ms = (int)but.p4; MainV2.comPort.doCommand(MAVLink.MAV_CMD.DO_REPEAT_SERVO, channelno, pwmvalue, repeattime, delay_ms, 0, 0, 0); } catch { CustomMessageBox.Show("Failed to DO_REPEAT_SERVO"); } }); break; } } }
void Start() { joystick = FindObjectOfType <Joystick>(); joybutton = FindObjectOfType <JoyButton>(); rb = GetComponent <Rigidbody>(); }
private void Awake() { //bad way to implement. only for tests joyButtonBurp = FindObjectOfType <JoyButton>(); isJoystickEnable = joyButtonBurp && joyButtonBurp.gameObject.activeInHierarchy; }
public void SetInputButton(JoyButton jb) { joybutton = jb; }
// Start is called before the first frame update void Start() { joystick = GameObject.FindGameObjectWithTag("JoystickTag").GetComponent <Joystick>(); joyButton = FindObjectOfType <JoyButton>(); }
/// <summary> /// Button press check with debounce /// </summary> /// <param name="buttonno"></param> /// <returns></returns> bool getButtonState(JoyButton but, int buttonno) { byte[] buts = state.GetButtons(); // button down bool ans = buts[buttonno] > 0 && buttonpressed[buttonno] == 0; // press check + debounce if (ans) ButtonDown(but); // button up ans = buts[buttonno] == 0 && buttonpressed[buttonno] > 0; if (ans) ButtonUp(but); buttonpressed[buttonno] = buts[buttonno]; // set only this button return ans; }
void Start() { joystick = FindObjectOfType <Joystick>(); joyButton = FindObjectOfType <JoyButton>(); PlayerPrefs.SetInt("currentScore", 0); }
public void DrawControls() { JoypadMove.Draw(); JoyButton.Draw(); }
public void setButton(int arrayoffset, JoyButton buttonconfig) { JoyButtons[arrayoffset] = buttonconfig; }
// Start is called before the first frame update void Start() { joystick = FindObjectOfType <Joystick>(); joybutton = FindObjectOfType <JoyButton>(); JumpCount = MaxJumps; }
public int GetKeyCodeOffset(JoyButton j) { return GetKeyCodeOffset((int)j); }
public string GetButtonName(JoyButton j) { return GetButtonName( (int) j ); }
// Use this for initialization void Start() { joystick = FindObjectOfType <Joystick>(); joybutton = FindObjectOfType <JoyButton>(); }
void ButtonUp(JoyButton but) { ProcessButtonEvent(but, false); }
//Enemy kill count needs to start 0 instead of 1 // Use this for initialization void Start() { joybutton = FindObjectOfType <JoyButton>(); thePlayerStats = FindObjectOfType <PlayerStats>(); theDialogueManager = FindObjectOfType <DialogueManager>(); }
public void UpdateFireIcon(Byte index) { JoyButton.UpdateIcon(index); }
void ProcessButtonEvent(JoyButton but, bool buttondown) { if (but.buttonno != -1) { // only do_set_relay uses the button up option if (buttondown == false) if (but.function != buttonfunction.Do_Set_Relay) return; switch (but.function) { case buttonfunction.ChangeMode: string mode = but.mode; if (mode != null) { MainV2.instance.BeginInvoke((System.Windows.Forms.MethodInvoker)delegate() { try { MainV2.comPort.setMode(mode); } catch { CustomMessageBox.Show("Failed to change Modes"); } }); } break; case buttonfunction.Mount_Mode: MainV2.instance.BeginInvoke((System.Windows.Forms.MethodInvoker)delegate() { try { MainV2.comPort.setParam("MNT_MODE", but.p1); } catch { CustomMessageBox.Show("Failed to change mount mode"); } }); break; case buttonfunction.Arm: MainV2.instance.BeginInvoke((System.Windows.Forms.MethodInvoker)delegate() { try { MainV2.comPort.doARM(true); } catch { CustomMessageBox.Show("Failed to Arm"); } }); break; case buttonfunction.TakeOff: MainV2.instance.BeginInvoke((System.Windows.Forms.MethodInvoker)delegate() { try { MainV2.comPort.setMode("Guided"); if (MainV2.comPort.MAV.cs.firmware == MainV2.Firmwares.ArduCopter2) { MainV2.comPort.doCommand(MAVLink.MAV_CMD.TAKEOFF, 0, 0, 0, 0, 0, 0, 2); } else { MainV2.comPort.doCommand(MAVLink.MAV_CMD.TAKEOFF, 0, 0, 0, 0, 0, 0, 20); } } catch { CustomMessageBox.Show("Failed to takeoff"); } }); break; case buttonfunction.Disarm: MainV2.instance.BeginInvoke((System.Windows.Forms.MethodInvoker)delegate() { try { MainV2.comPort.doARM(false); } catch { CustomMessageBox.Show("Failed to Disarm"); } }); break; case buttonfunction.Do_Set_Relay: MainV2.instance.BeginInvoke((System.Windows.Forms.MethodInvoker)delegate() { try { int number = (int)but.p1; int state = buttondown == true ? 1 : 0; MainV2.comPort.doCommand(MAVLink.MAV_CMD.DO_SET_RELAY, number, state, 0, 0, 0, 0, 0); } catch { CustomMessageBox.Show("Failed to DO_SET_RELAY"); } }); break; case buttonfunction.Digicam_Control: MainV2.comPort.setDigicamControl(true); break; case buttonfunction.Do_Repeat_Relay: MainV2.instance.BeginInvoke((System.Windows.Forms.MethodInvoker)delegate() { try { int relaynumber = (int)but.p1; int repeat = (int)but.p2; int time = (int)but.p3; MainV2.comPort.doCommand(MAVLink.MAV_CMD.DO_REPEAT_RELAY, relaynumber, repeat, time, 0, 0, 0, 0); } catch { CustomMessageBox.Show("Failed to DO_REPEAT_RELAY"); } }); break; case buttonfunction.Do_Set_Servo: MainV2.instance.BeginInvoke((System.Windows.Forms.MethodInvoker)delegate() { try { int channel = (int)but.p1; int pwm = (int)but.p2; MainV2.comPort.doCommand(MAVLink.MAV_CMD.DO_SET_SERVO, channel, pwm, 0, 0, 0, 0, 0); } catch { CustomMessageBox.Show("Failed to DO_SET_SERVO"); } }); break; case buttonfunction.Do_Repeat_Servo: MainV2.instance.BeginInvoke((System.Windows.Forms.MethodInvoker)delegate() { try { int channelno = (int)but.p1; int pwmvalue = (int)but.p2; int repeattime = (int)but.p3; int delay_ms = (int)but.p4; MainV2.comPort.doCommand(MAVLink.MAV_CMD.DO_REPEAT_SERVO, channelno, pwmvalue, repeattime, delay_ms, 0, 0, 0); } catch { CustomMessageBox.Show("Failed to DO_REPEAT_SERVO"); } }); break; case buttonfunction.Toggle_Pan_Stab: MainV2.instance.BeginInvoke((System.Windows.Forms.MethodInvoker)delegate() { try { float current = (float)MainV2.comPort.MAV.param["MNT_STAB_PAN"]; float newvalue = (current > 0) ? 0 : 1; MainV2.comPort.setParam("MNT_STAB_PAN", newvalue); } catch { CustomMessageBox.Show("Failed to Toggle_Pan_Stab"); } }); break; case buttonfunction.Gimbal_pnt_track: MainV2.instance.BeginInvoke((System.Windows.Forms.MethodInvoker)delegate() { try { MainV2.comPort.doCommand(MAVLink.MAV_CMD.DO_SET_ROI, 0, 0, 0, 0, MainV2.comPort.MAV.cs.gimballat, MainV2.comPort.MAV.cs.gimballng, (float)MainV2.comPort.MAV.cs.GimbalPoint.Alt); } catch { CustomMessageBox.Show("Failed to Gimbal_pnt_track"); } }); break; case buttonfunction.Mount_Control_0: MainV2.instance.BeginInvoke((System.Windows.Forms.MethodInvoker)delegate() { try { MainV2.comPort.setMountControl(0,0,0,false); } catch { CustomMessageBox.Show("Failed to Mount_Control_0"); } }); break; } } }
// Use this for initialization void Start() { joyButton = FindObjectOfType <JoyButton>(); PlayerAnim = GetComponent <Animator>(); gameObject.GetComponent <NetworkAnimator>().SetParameterAutoSend(0, true); }
void ButtonDown(JoyButton but) { ProcessButtonEvent(but, true); }
public bool isGrounded = true; //Si está en el suelo void Start() { joyButton = FindObjectOfType <JoyButton>(); }
// Start is called before the first frame update void Start() { joystick = FindObjectOfType <Joystick>(); joybutton = FindObjectOfType <JoyButton>(); characterController = GetComponent <CharacterController>(); }
void GUISelectButton() { GUILayout.BeginVertical("Box"); joyMenuCount=18; GUILayout.BeginHorizontal(); JoySelectedButton(6); if((joyClick&&joyMenuSelected==6)|| GUILayout.Button("ButtonA")){ joyMenuSelected=6; joypadButton=JoyButton.ButtonA; beginGetJoystickButton=true; joyClick=false; } JoySelectedButton(7); if((joyClick&&joyMenuSelected==7)|| GUILayout.Button("ButtonB")){ joyMenuSelected=7; joypadButton=JoyButton.ButtonB; beginGetJoystickButton=true; joyClick=false; } JoySelectedButton(8); if((joyClick&&joyMenuSelected==8)|| GUILayout.Button("ButtonX")){ joyMenuSelected=8; joypadButton=JoyButton.ButtonX; beginGetJoystickButton=true; joyClick=false; } JoySelectedButton(9); if((joyClick&&joyMenuSelected==9)|| GUILayout.Button("ButtonY")){ joyMenuSelected=9; joypadButton=JoyButton.ButtonY; beginGetJoystickButton=true; joyClick=false; } GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); JoySelectedButton(10); if((joyClick&&joyMenuSelected==10)|| GUILayout.Button("ButtonL1")){ joyMenuSelected=10; joypadButton=JoyButton.ButtonL1; beginGetJoystickButton=true; joyClick=false; } JoySelectedButton(11); if((joyClick&&joyMenuSelected==11)|| GUILayout.Button("ButtonL2")){ joyMenuSelected=11; joypadButton=JoyButton.ButtonL2; beginGetJoystickButton=true; joyClick=false; } JoySelectedButton(12); if((joyClick&&joyMenuSelected==12)|| GUILayout.Button("ButtonR1")){ joyMenuSelected=12; joypadButton=JoyButton.ButtonR1; beginGetJoystickButton=true; joyClick=false; } JoySelectedButton(13); if((joyClick&&joyMenuSelected==13)|| GUILayout.Button("ButtonR2")){ joyMenuSelected=13; joypadButton=JoyButton.ButtonR2; beginGetJoystickButton=true; joyClick=false; } GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); JoySelectedButton(14); if((joyClick&&joyMenuSelected==14)|| GUILayout.Button("ButtonStart")){ joyMenuSelected=14; joypadButton=JoyButton.ButtonStart; beginGetJoystickButton=true; joyClick=false; } JoySelectedButton(15); if((joyClick&&joyMenuSelected==15)|| GUILayout.Button("ButtonSelect")){ joyMenuSelected=15; joypadButton=JoyButton.ButtonSelect; beginGetJoystickButton=true; joyClick=false; } GUILayout.EndHorizontal(); if(beginGetJoystickButton)GUILayout.Box("Press Button"); GUILayout.EndVertical(); }
public void setButton(int arrayoffset,int buttonid,string mode1) { JoyButtons[arrayoffset] = new JoyButton() { buttonno = buttonid, mode = mode1 }; }
public bool getJoystickButton( Joypad joypad , JoyButton joyButton ) { bool waitButton=false; waitButtonDelay=0.6f; if(joypad==Joypad.Joypad1){ switch(joyButton){ case JoyButton.ButtonA: Joy1ButtonA=getJoystick1Button(); if(Joy1ButtonA != KeyCode.None)waitButton=true; break; case JoyButton.ButtonB: Joy1ButtonB=getJoystick1Button(); if(Joy1ButtonB != KeyCode.None)waitButton=true; break; case JoyButton.ButtonX: Joy1ButtonX=getJoystick1Button(); if(Joy1ButtonX != KeyCode.None)waitButton=true; break; case JoyButton.ButtonY: Joy1ButtonY=getJoystick1Button(); if(Joy1ButtonY != KeyCode.None)waitButton=true; break; case JoyButton.ButtonL1: Joy1ButtonL1=getJoystick1Button(); if(Joy1ButtonL1 != KeyCode.None)waitButton=true; break; case JoyButton.ButtonL2: Joy1ButtonL2=getJoystick1Button(); if(Joy1ButtonL2 != KeyCode.None)waitButton=true; break; case JoyButton.ButtonR1: Joy1ButtonR1=getJoystick1Button(); if(Joy1ButtonR1 != KeyCode.None)waitButton=true; break; case JoyButton.ButtonR2: Joy1ButtonR2=getJoystick1Button(); if(Joy1ButtonR2 != KeyCode.None)waitButton=true; break; case JoyButton.ButtonStart: Joy1ButtonStart=getJoystick1Button(); if(Joy1ButtonStart != KeyCode.None)waitButton=true; break; case JoyButton.ButtonSelect: Joy1ButtonSelect=getJoystick1Button(); if(Joy1ButtonSelect != KeyCode.None)waitButton=true; break; } } else if(joypad==Joypad.Joypad2){ switch(joyButton){ case JoyButton.ButtonA: Joy2ButtonA=getJoystick2Button(); if(Joy2ButtonA != KeyCode.None)waitButton=true; break; case JoyButton.ButtonB: Joy2ButtonB=getJoystick2Button(); if(Joy2ButtonB != KeyCode.None)waitButton=true; break; case JoyButton.ButtonX: Joy2ButtonX=getJoystick2Button(); if(Joy2ButtonX != KeyCode.None)waitButton=true; break; case JoyButton.ButtonY: Joy2ButtonY=getJoystick2Button(); if(Joy2ButtonY != KeyCode.None)waitButton=true; break; case JoyButton.ButtonL1: Joy2ButtonL1=getJoystick2Button(); if(Joy2ButtonL1 != KeyCode.None)waitButton=true; break; case JoyButton.ButtonL2: Joy2ButtonL2=getJoystick2Button(); if(Joy2ButtonL2 != KeyCode.None)waitButton=true; break; case JoyButton.ButtonR1: Joy2ButtonR1=getJoystick2Button(); if(Joy2ButtonR1 != KeyCode.None)waitButton=true; break; case JoyButton.ButtonR2: Joy2ButtonR2=getJoystick2Button(); if(Joy2ButtonR2 != KeyCode.None)waitButton=true; break; case JoyButton.ButtonStart: Joy2ButtonStart=getJoystick2Button(); if(Joy2ButtonStart != KeyCode.None)waitButton=true; break; case JoyButton.ButtonSelect: Joy2ButtonSelect=getJoystick2Button(); if(Joy2ButtonSelect != KeyCode.None)waitButton=true; break; } } else if(joypad==Joypad.Joypad3){ switch(joyButton){ case JoyButton.ButtonA: Joy3ButtonA=getJoystick3Button(); if(Joy3ButtonA != KeyCode.None)waitButton=true; break; case JoyButton.ButtonB: Joy3ButtonB=getJoystick3Button(); if(Joy3ButtonB != KeyCode.None)waitButton=true; break; case JoyButton.ButtonX: Joy3ButtonX=getJoystick3Button(); if(Joy3ButtonX != KeyCode.None)waitButton=true; break; case JoyButton.ButtonY: Joy3ButtonY=getJoystick3Button(); if(Joy3ButtonY != KeyCode.None)waitButton=true; break; case JoyButton.ButtonL1: Joy3ButtonL1=getJoystick3Button(); if(Joy3ButtonL1 != KeyCode.None)waitButton=true; break; case JoyButton.ButtonL2: Joy3ButtonL2=getJoystick3Button(); if(Joy3ButtonL2 != KeyCode.None)waitButton=true; break; case JoyButton.ButtonR1: Joy3ButtonR1=getJoystick3Button(); if(Joy3ButtonR1 != KeyCode.None)waitButton=true; break; case JoyButton.ButtonR2: Joy3ButtonR2=getJoystick3Button(); if(Joy3ButtonR2 != KeyCode.None)waitButton=true; break; case JoyButton.ButtonStart: Joy3ButtonStart=getJoystick3Button(); if(Joy3ButtonStart != KeyCode.None)waitButton=true; break; case JoyButton.ButtonSelect: Joy3ButtonSelect=getJoystick3Button(); if(Joy3ButtonSelect != KeyCode.None)waitButton=true; break; } } else if(joypad==Joypad.Joypad4){ switch(joyButton){ case JoyButton.ButtonA: Joy4ButtonA=getJoystick4Button(); if(Joy4ButtonA != KeyCode.None)waitButton=true; break; case JoyButton.ButtonB: Joy4ButtonB=getJoystick4Button(); if(Joy4ButtonB != KeyCode.None)waitButton=true; break; case JoyButton.ButtonX: Joy4ButtonX=getJoystick4Button(); if(Joy4ButtonX != KeyCode.None)waitButton=true; break; case JoyButton.ButtonY: Joy4ButtonY=getJoystick4Button(); if(Joy4ButtonY != KeyCode.None)waitButton=true; break; case JoyButton.ButtonL1: Joy4ButtonL1=getJoystick4Button(); if(Joy4ButtonL1 != KeyCode.None)waitButton=true; break; case JoyButton.ButtonL2: Joy4ButtonL2=getJoystick4Button(); if(Joy4ButtonL2 != KeyCode.None)waitButton=true; break; case JoyButton.ButtonR1: Joy4ButtonR1=getJoystick4Button(); if(Joy4ButtonR1 != KeyCode.None)waitButton=true; break; case JoyButton.ButtonR2: Joy4ButtonR2=getJoystick4Button(); if(Joy4ButtonR2 != KeyCode.None)waitButton=true; break; case JoyButton.ButtonStart: Joy4ButtonStart=getJoystick4Button(); if(Joy4ButtonStart != KeyCode.None)waitButton=true; break; case JoyButton.ButtonSelect: Joy4ButtonSelect=getJoystick4Button(); if(Joy4ButtonSelect != KeyCode.None)waitButton=true; break; } } return waitButton; }