ya2 · news · projects · code · about

removed unused code
[pmachines.git] / ya2 / lib / p3d / joystick.py
CommitLineData
cb700bcc 1# from panda3d.core import InputDevice
8ee66edd
FC
2
3
cb700bcc 4# class P3dJoystickMgr:
8ee66edd 5
cb700bcc
FC
6# def __init__(self):
7# self.joysticks = []
8# self.curr_vibration = {}
9# self.__is_vibrating = [False, False, False, False]
8ee66edd 10
cb700bcc
FC
11# def init_joystick(self):
12# for i, dev in enumerate(base.devices.getDevices(InputDevice.DeviceClass.gamepad)):
13# base.attachInputDevice(dev, prefix='joypad%s' % i)
14# taskMgr.add(self._update, 'update joysticks')
15# # pygame.init()
16# # joystick.init()
17# # self.joysticks = [
18# # joystick.Joystick(idx) for idx in range(joystick.get_count())]
19# # list(map(lambda joystick: joystick.init(), self.joysticks))
8ee66edd 20
cb700bcc
FC
21# @property
22# def num_joysticks(self):
23# return len(base.devices.getDevices(InputDevice.DeviceClass.gamepad))
8ee66edd 24
cb700bcc
FC
25# @staticmethod
26# def get_joystick(player_idx):
27# devices = base.devices.getDevices(InputDevice.DeviceClass.gamepad)
28# if player_idx > len(devices) - 1:
29# return 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
30# gamepad = devices[player_idx]
31# face_a = gamepad.findButton('face_a')
32# face_b = gamepad.findButton('face_b')
33# face_x = gamepad.findButton('face_x')
34# face_y = gamepad.findButton('face_y')
35# dpad_l = gamepad.findButton('dpad_left')
36# dpad_r = gamepad.findButton('dpad_right')
37# dpad_u = gamepad.findButton('dpad_up')
38# dpad_d = gamepad.findButton('dpad_down')
39# trigger_l = gamepad.findButton('ltrigger')
40# trigger_r = gamepad.findButton('rtrigger')
41# shoulder_l = gamepad.findButton('lshoulder')
42# shoulder_r = gamepad.findButton('rshoulder')
43# stick_l = gamepad.findButton('lstick')
44# stick_r = gamepad.findButton('rstick')
45# left_x = gamepad.findAxis(InputDevice.Axis.left_x)
46# left_y = gamepad.findAxis(InputDevice.Axis.left_y)
47# trigger_l_axis = gamepad.findAxis(InputDevice.Axis.left_trigger)
48# trigger_r_axis = gamepad.findAxis(InputDevice.Axis.right_trigger)
49# trigger_l_known = trigger_l.known
50# trigger_r_known = trigger_r.known
51# return (left_x.value, -left_y.value, face_a.pressed, face_b.pressed,
52# face_x.pressed, face_y.pressed,
53# dpad_l.pressed, dpad_r.pressed, dpad_u.pressed, dpad_d.pressed,
54# trigger_l.pressed or trigger_l_axis.value > .5,
55# trigger_r.pressed or trigger_r_axis.value > .5,
56# shoulder_l.pressed, shoulder_r.pressed, stick_l.pressed,
57# stick_r.pressed, trigger_l_known, trigger_r_known)
58# # for _ in pygame.event.get(): pass
59# # if not self.joysticks: return 0, 0, 0, 0
60# # jstick = self.joysticks[0]
61# # axis, btn = jstick.get_axis, jstick.get_button
62# # return axis(0), axis(1), btn(0), btn(1)
8ee66edd 63
cb700bcc
FC
64# def set_vibration(self, player_idx, code, time=-1):
65# devices = base.devices.getDevices(InputDevice.DeviceClass.gamepad)
66# if player_idx < 0 or player_idx > len(devices) - 1: return
67# if player_idx in self.curr_vibration and \
68# code in self.curr_vibration[player_idx]: return
69# if player_idx not in self.curr_vibration:
70# self.curr_vibration[player_idx] = {}
71# self.curr_vibration[player_idx][code] = time
8ee66edd 72
cb700bcc
FC
73# def clear_vibration(self, player_idx, code=None):
74# devices = base.devices.getDevices(InputDevice.DeviceClass.gamepad)
75# if player_idx < 0 or player_idx > len(devices) - 1: return
76# if player_idx not in self.curr_vibration or \
77# code not in self.curr_vibration[player_idx]: return
78# if code is None: del self.curr_vibration[player_idx]
79# else: del self.curr_vibration[player_idx][code]
8ee66edd 80
cb700bcc
FC
81# def _update(self, task):
82# devices = base.devices.getDevices(InputDevice.DeviceClass.gamepad)
83# for player_idx in self.curr_vibration:
84# for code in self.curr_vibration[player_idx]:
85# if self.curr_vibration[player_idx][code] != -1:
86# dt = globalClock.getDt()
87# self.curr_vibration[player_idx][code] -= dt
88# for player_idx in self.curr_vibration:
89# for code in list(self.curr_vibration[player_idx])[:]:
90# if self.curr_vibration[player_idx][code] != -1:
91# if self.curr_vibration[player_idx][code] < 0:
92# del self.curr_vibration[player_idx][code]
93# for player_idx in list(self.curr_vibration)[:]:
94# if not self.curr_vibration[player_idx]:
95# del self.curr_vibration[player_idx]
96# for player_idx, dev in enumerate(devices):
97# gamepad = devices[player_idx]
98# if player_idx in self.curr_vibration and \
99# not self.__is_vibrating[player_idx]:
100# gamepad.set_vibration(.2, .4)
101# self.__is_vibrating[player_idx] = True
102# elif player_idx not in self.curr_vibration:
103# gamepad.set_vibration(0, 0)
104# self.__is_vibrating[player_idx] = False
105# return task.cont
8ee66edd 106
cb700bcc
FC
107# def destroy(self):
108# pass
109# # joystick.quit()
110# # pygame.quit()
111# # self.joysticks = []