Source code for autoease.driver_control.gamepad

#!/usr/bin/python
# -*- coding: UTF-8 -*-

"""
@IDE: PyCharm
@Project: automation
@Author: Alice Wu
@Email: wutong01@corp.netease.com
@File: gamepad.py
@Time: 2021/3/1 11:46
@Description:
"""
import time

from autoease.driver_control import GAMEPAD_VIRTUAL


[docs]class GAMEPAD_BUTTONS(object): BtnBack = 'BtnBack' # Menu/Back Button BtnStart = 'BtnStart' # Start Button BtnA = 'BtnA' # A Button BtnB = 'BtnB' # B Button BtnX = 'BtnX' # X Button BtnY = 'BtnY' # Y Button BtnThumbL = 'BtnThumbL' # Left Thumbstick Click BtnThumbR = 'BtnThumbR' # Right Thumbstick Click BtnShoulderL = 'BtnShoulderL' # Left Shoulder Button BtnShoulderR = 'BtnShoulderR' # Right Shoulder Button TriggerL = 'TriggerL' # Left Trigger TriggerR = 'TriggerR' # Right Trigger Dpad = 'Dpad' DpadUp = 'DpadUp' DpadDown = 'DpadDown' DpadLeft = 'DpadLeft' DpadRight = 'DpadRight'
[docs]class GAMEPAD_THUMBS(object): AxisLx = 'AxisLx' # Left Stick X-Axis AxisLy = 'AxisLy' # Left Stick Y-Axis AxisRx = 'AxisRx' # Right Stick X-Axis AxisRy = 'AxisRy' # Right Stick Y-Axis
[docs]class GAMEPAD_DPADS(object): Dpad = 'Dpad' # Set Dpad Value (0 = Off, Use DPAD_### Contstants) DPAD_OFF = 0 DPAD_UP = 1 DPAD_DOWN = 2 DPAD_LEFT = 4 DPAD_RIGHT = 8
def _gamepad_button_down(key, strength=1): """ :param key: In GamePadButton :param strength: (0, 1] :return: """ if hasattr(GAMEPAD_BUTTONS, key): if key.startswith('Dpad'): if key == GAMEPAD_BUTTONS.DpadUp: GAMEPAD_VIRTUAL.set_value(GAMEPAD_DPADS.Dpad, GAMEPAD_DPADS.DPAD_UP) elif key == GAMEPAD_BUTTONS.DpadDown: GAMEPAD_VIRTUAL.set_value(GAMEPAD_DPADS.Dpad, GAMEPAD_DPADS.DPAD_DOWN) elif key == GAMEPAD_BUTTONS.DpadLeft: GAMEPAD_VIRTUAL.set_value(GAMEPAD_DPADS.Dpad, GAMEPAD_DPADS.DPAD_LEFT) elif key == GAMEPAD_BUTTONS.DpadRight: GAMEPAD_VIRTUAL.set_value(GAMEPAD_DPADS.Dpad, GAMEPAD_DPADS.DPAD_RIGHT) else: GAMEPAD_VIRTUAL.set_value(key, strength) def _gamepad_button_up(key): if hasattr(GAMEPAD_BUTTONS, key): if key.startswith('Dpad'): GAMEPAD_VIRTUAL.set_value(GAMEPAD_DPADS.Dpad, GAMEPAD_DPADS.DPAD_OFF) else: GAMEPAD_VIRTUAL.set_value(key, 0) def _thrumb_move(key, direction): ...
[docs]def gamepad_button_down(key, strength=1): _gamepad_button_down(key=key, strength=strength) print('Gamepad Down: %s' % key)
[docs]def gamepad_button_up(key): _gamepad_button_up(key=key) print('Gamepad Up: %s' % key)
[docs]def gamepad_button_press(key, duration=None, strength=1): gamepad_button_down(key, strength) if duration: time.sleep(duration) gamepad_button_up(key)