Shuvit game master repo. http://shuvit.org
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

inputs.py 6.5KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216
  1. ################################################
  2. #inputs.py #
  3. #inputs to global dict #
  4. #shuvit.org #
  5. ################################################
  6. import bge
  7. from bge import events
  8. from bge import logic as G
  9. def main():
  10. #####
  11. #init
  12. cont = bge.logic.getCurrentController()
  13. scene = bge.logic.getCurrentScene()
  14. own = cont.owner
  15. dict = bge.logic.globalDict #Get the global dictionary
  16. aXis = cont.sensors['Joystick.001']
  17. bUtt = cont.sensors['Joystick']
  18. reduction = 400000
  19. axisTh = 0.03
  20. #hard controller mappings
  21. lar_lts = 0
  22. uad_lts = 1
  23. lar_rts = 2
  24. uad_rts = 3
  25. lt = 4
  26. rt = 5
  27. a_but = 0
  28. b_but = 1
  29. x_but = 2
  30. y_but = 3
  31. l_bump = 9
  32. r_bump = 10
  33. bk_but = 4
  34. st_but = 6
  35. xb_but = 5
  36. lts_pr = 7
  37. rts_pr = 8
  38. l_dp = 13
  39. r_dp = 14
  40. u_dp = 11
  41. d_dp = 12
  42. reduction = 400000
  43. axisTh = 0.03
  44. if not any(bge.logic.joysticks):
  45. print("joystick not connnected")
  46. dict['joy_con'] = 0
  47. else:
  48. dict['joy_con'] = 1
  49. #get controller axis value 0-100
  50. if dict['joy_con'] == 1:
  51. lLR = aXis.axisValues[lar_lts] / reduction
  52. lUD = aXis.axisValues[uad_lts] / reduction
  53. rLR = aXis.axisValues[lar_rts] / reduction
  54. rUD = aXis.axisValues[uad_rts] / reduction
  55. lTrig = aXis.axisValues[lt] / reduction
  56. rTrig = aXis.axisValues[rt] / reduction
  57. aBut = bUtt.getButtonStatus(a_but)
  58. bBut = bUtt.getButtonStatus(b_but)
  59. xBut = bUtt.getButtonStatus(x_but)
  60. yBut = bUtt.getButtonStatus(y_but)
  61. lBump = bUtt.getButtonStatus(l_bump)
  62. rBump = bUtt.getButtonStatus(r_bump)
  63. bkBut = bUtt.getButtonStatus(bk_but)
  64. stBut = bUtt.getButtonStatus(st_but)
  65. xbBut = bUtt.getButtonStatus(xb_but)
  66. ltsBut = bUtt.getButtonStatus(lts_pr)
  67. rtsBut = bUtt.getButtonStatus(rts_pr)
  68. ldPad = bUtt.getButtonStatus(l_dp)
  69. rdPad = bUtt.getButtonStatus(r_dp)
  70. udPad = bUtt.getButtonStatus(u_dp)
  71. ddPad = bUtt.getButtonStatus(d_dp)
  72. #create modified axis values
  73. if lLR < -20:
  74. lmLR = round((lLR + 20) / 80 * 100, 0)
  75. elif lLR > 20:
  76. lmLR = round((lLR - 20) / 80 * 100, 0)
  77. else: lmLR = 0
  78. if lUD > 20:
  79. lmUD = round((lUD - 20) / 80 * 100, 0)
  80. elif lUD < -20:
  81. lmUD = round((lUD + 20) / 80 * 100, 0)
  82. else: lmUD = 0
  83. if rLR < -20:
  84. rmLR = round((rLR + 20) / 80 * 100, 0)
  85. elif rLR > 20:
  86. rmLR = round((rLR - 20) / 80 * 100, 0)
  87. else: rmLR = 0
  88. if rUD > 20:
  89. rmUD = round((rUD - 20) / 80 * 100, 0)
  90. elif rUD < -20:
  91. rmUD = round((rUD + 20) / 80 * 100, 0)
  92. else: rmUD = 0
  93. if lTrig > 3:
  94. mTrig = lTrig * -1
  95. elif rTrig > 3:
  96. mTrig = rTrig
  97. else: mTrig = 0
  98. #
  99. keyboard = G.keyboard.events
  100. # KEY BINDINGS
  101. kb_a = events.AKEY
  102. kb_d = events.DKEY
  103. kb_w = events.WKEY
  104. kb_s = events.SKEY
  105. kb_q = events.QKEY
  106. kb_e = events.EKEY
  107. kb_z = events.ZKEY
  108. kb_c = events.CKEY
  109. kb_en = events.ENTERKEY
  110. kb_la = events.LEFTARROWKEY
  111. kb_ra = events.RIGHTARROWKEY
  112. kb_ua = events.UPARROWKEY
  113. kb_da = events.DOWNARROWKEY
  114. #if keyboard[kb_a]:
  115. #print(keyboard[kb_a])
  116. dict['last_kb_a'] = dict['kb_a']
  117. dict['last_kb_d'] = dict['kb_d']
  118. dict['last_kb_w'] = dict['kb_w']
  119. dict['last_kb_s'] = dict['kb_s']
  120. dict['last_kb_q'] = dict['kb_q']
  121. dict['last_kb_e'] = dict['kb_e']
  122. dict['last_kb_z'] = dict['kb_z']
  123. dict['last_kb_c'] = dict['kb_c']
  124. dict['last_kb_en'] = dict['kb_en']
  125. dict['last_kb_la'] = dict['kb_la']
  126. dict['last_kb_ra'] = dict['kb_ra']
  127. dict['last_kb_ua'] = dict['kb_ua']
  128. dict['last_kb_da'] = dict['kb_da']
  129. dict['kb_a'] = keyboard[kb_a]
  130. dict['kb_d'] = keyboard[kb_d]
  131. dict['kb_w'] = keyboard[kb_w]
  132. dict['kb_s'] = keyboard[kb_s]
  133. dict['kb_q'] = keyboard[kb_q]
  134. dict['kb_e'] = keyboard[kb_e]
  135. dict['kb_z'] = keyboard[kb_z]
  136. dict['kb_c'] = keyboard[kb_c]
  137. dict['kb_en'] = keyboard[kb_en]
  138. dict['kb_la'] = keyboard[kb_la]
  139. dict['kb_ra'] = keyboard[kb_ra]
  140. dict['kb_ua'] = keyboard[kb_ua]
  141. dict['kb_da'] = keyboard[kb_da]
  142. dict['last_aBut'] = dict['aBut']
  143. dict['last_bBut'] = dict['bBut']
  144. dict['last_xBut'] = dict['xBut']
  145. dict['last_yBut'] = dict['yBut']
  146. dict['last_lBump'] = dict['lBump']
  147. dict['last_rBump'] = dict['rBump']
  148. dict['last_bkBut'] = dict['bkBut']
  149. dict['last_stBut'] = dict['stBut']
  150. dict['last_xbBut'] = dict['xbBut']
  151. dict['last_ltsBut'] = dict['ltsBut']
  152. dict['last_rtsBut'] = dict['rtsBut']
  153. dict['last_ldPad'] = dict['ldPad']
  154. dict['last_rdPad'] = dict['rdPad']
  155. dict['last_udPad'] = dict['udPad']
  156. dict['last_ddPad'] = dict['ddPad']
  157. dict['last_rUD'] = dict['rUD']
  158. dict['last_lUD'] = dict['lUD']
  159. dict['last_rLR'] = dict['rLR']
  160. dict['last_lLR'] = dict['lLR']
  161. dict['last_rmUD'] = dict['rmUD']
  162. dict['last_lmUD'] = dict['lmUD']
  163. dict['last_rmLR'] = dict['rmLR']
  164. dict['last_lmLR'] = dict['lmLR']
  165. dict['last_mTrig'] = dict['mTrig']
  166. dict['last_rTrig'] = dict['rTrig']
  167. dict['last_lTrig'] = dict['lTrig']
  168. dict['aBut'] = aBut
  169. dict['bBut'] = bBut
  170. dict['xBut'] = xBut
  171. dict['yBut'] = yBut
  172. dict['lBump'] = lBump
  173. dict['rBump'] = rBump
  174. dict['bkBut'] = bkBut
  175. dict['stBut'] = stBut
  176. dict['xbBut'] = xbBut
  177. dict['ltsBut'] = ltsBut
  178. dict['rtsBut'] = rtsBut
  179. dict['ldPad'] = ldPad
  180. dict['rdPad'] = rdPad
  181. dict['udPad'] = udPad
  182. dict['ddPad'] = ddPad
  183. dict['rUD'] = rUD
  184. dict['lUD'] = lUD
  185. dict['rLR'] = rLR
  186. dict['lLR'] = lLR
  187. dict['rmUD'] = rmUD
  188. dict['lmUD'] = lmUD
  189. dict['rmLR'] = rmLR
  190. dict['lmLR'] = lmLR
  191. dict['mTrig'] = mTrig
  192. dict['rTrig'] = rTrig
  193. dict['lTrig'] = lTrig
  194. main()