public InputAction(Buttons[] buttons, Keys[] keys, bool newPressOnly) { this.buttons = buttons != null ? buttons.Clone() as Buttons[] : new Buttons[0]; this.keys = keys != null ? keys.Clone() as Keys[] : new Keys[0]; this.newPressOnly = newPressOnly; }
/// <summary> /// Initializes a new InputAction. /// </summary> /// <param name="buttons">An array of buttons that can trigger the action.</param> /// <param name="keys">An array of keys that can trigger the action.</param> /// <param name="newPressOnly">Whether the action only occurs on the first press of one of the buttons/keys, /// false if it occurs each frame one of the buttons/keys is down.</param> public InputAction(Buttons[] buttons, Keys[] keys, bool newPressOnly) { // Store the buttons and keys. If the arrays are null, we create a 0 length array so we don't // have to do null checks in the Evaluate method. this.buttons = buttons != null ? buttons.Clone() as Buttons[] : new Buttons[0]; this.keys = keys != null ? keys.Clone() as Keys[] : new Keys[0]; this.newPressOnly = newPressOnly; }
public IJoystickState Clone() { var clone = (JoystickState)MemberwiseClone(); clone.Buttons = Buttons.Clone(); clone.Axes = new List <JoystickAxis>(Axes); return(clone); }
/// <summary> /// インスタンスの複製 /// </summary> /// <returns></returns> public MouseState Clone() { var ret = new MouseState { Pos = (ScreenPos)Pos.Clone(), Delta = Delta, Attr = (Buttons)Attr.Clone(), _paneAtPos = _paneAtPos }; return(ret); }