Есть ли способ получить вход от триггеров контроллера Xbox, в Pygame? - PullRequest
0 голосов
/ 05 января 2020

Некоторое время назад я начал управлять игрой, над которой я работаю в pygame, с двумя контроллерами xbox one. Я делал это в операционной системе ma c, и контроллеры подключались к моему компьютеру через кабели usb-micro usb или, в частности, не через Bluetooth. Pygame был в состоянии прочитать каждый вход, с двумя триггерами, идентифицированными как их собственная ось, поэтому, когда я возвратил x = joytsick1.get_numaxes (), print (x), я получил 6. Однако с недавним обновлением Catalina и поддержкой для беспроводных подключений я больше не могу получать входы от двух триггеров. Теперь, когда я возвращаю x = joystick1.get_numaxes (), print (x), я получаю 4. Я вижу, что входные данные есть, когда я печатаю событие в pygame.event.get (), однако в этом методе нет различие между двумя контроллерами, которые я использую. Как я могу правильно получать входы от триггеров или отличать guish от входов двух контроллеров?

import pygame

pygame.init()
pygame.joystick.init()

width = 600
height = 600

screen = pygame.display.set_mode((width, height))
running = True

joystick1 = pygame.joystick.Joystick(0)
joystick1.init()
joystick2 = pygame.joystick.Joystick(1)
joystick2.init()

while running:
    pygame.display.flip()

    for event in pygame.event.get():
        print(event)

        if event.type == pygame.QUIT:
            running = False
            pygame.quit()

        if event.type == pygame.KEYDOWN:
            if event.key == pygame.K_ESCAPE:
                running = False
                pygame.quit()


Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...