Не запускается игра на Touch Bar
Увидел блог парня который запустил Гугл динозавра на тачбаре решил тоже протестить и в итоге получил ошибку
код
from tkinter import *
import PyTouchBar
import random
def game(map, speed):
global jump
root = Tk()
PyTouchBar.prepare_tk_windows(root)
buttons = [0 for b in range(len(map))]
def jumping(button):
global jump
jump += 1
for chunk in range(len(map)):
if map[chunk] == 1:
buttons[chunk] = PyTouchBar.TouchBarItems.Button(image='trex.png', color=(PyTouchBar.Color.black), action=jumping)
elif map[chunk] == 0:
buttons[chunk] = PyTouchBar.TouchBarItems.Button(image='platform.png', color=(PyTouchBar.Color.black))
elif map[chunk] == -1:
buttons[chunk] = PyTouchBar.TouchBarItems.Button(image='cactus.png', color=(PyTouchBar.Color.black))
elif map[chunk] == -2:
buttons[chunk] = PyTouchBar.TouchBarItems.Button(image='loss.png', color=(PyTouchBar.Color.black))
elif map[chunk] == 2:
buttons[chunk] = PyTouchBar.TouchBarItems.Button(image='lucky.png', color=(PyTouchBar.Color.black))
PyTouchBar.set_touchbar(buttons)
root.after(1200 - speed * 100, root.destroy)
root.mainloop()
def prepare():
global root
global speed
root = Tk()
def set_speed(stepper):
global speed
speed = int(stepper.value)
def finish(points):
root = Tk()
label = PyTouchBar.TouchBarItems.Label(text=f'Упс:( Вы набрали: {points}')
PyTouchBar.set_touchbar([label])
PyTouchBar.prepare_tk_windows(root)
root.mainloop()
def start(button):
global jump
global speed
speed = 2
jump = 0
map = [[1,0], 0, 0, -1, 0, -1, 0]
points = 0
root.destroy()
zero_chunk = 1
while True:
map[0] = [1,map[1]]
if jump == 0 and map[0] == [1,-1]:
zero_chunk = -2
elif jump >= 1 and map[0] == [1,0]:
jump = 0
zero_chunk = 1
elif jump == 1 and map[0] == [1,-1]:
zero_chunk = 2
points += 1
new_map = map[1:]
new_map[0] = zero_chunk
if map[-1] == 0:
new_map.append(random.choice([0, -1]))
else:
new_map.append(0)
print(map, new_map)
map = new_map
game(new_map, speed)
if zero_chunk == -2:
finish(points)
speed_p = PyTouchBar.TouchBarItems.Stepper(min=2, max=8, action=set_speed)
starter = PyTouchBar.TouchBarItems.Button(title='играть', color=(PyTouchBar.Color.black), action=start)
PyTouchBar.set_touchbar([speed_p, starter])
PyTouchBar.prepare_tk_windows(root)
root.mainloop()
prepare()
Ошибка:
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[NSApplication macOSVersion]: unrecognized selector sent to instance 0x7fb413b82d10'
*** First throw call stack:
(
0 CoreFoundation 0x00007ff80b4cbd76 __exceptionPreprocess + 242
1 libobjc.A.dylib 0x00007ff80afbe321 objc_exception_throw + 48
2 CoreFoundation 0x00007ff80b571134 -[NSObject(NSObject) __retain_OA] + 0
3 CoreFoundation 0x00007ff80b4395c3 ___forwarding___ + 1379
4 CoreFoundation 0x00007ff80b438fd8 _CF_forwarding_prep_0 + 120
5 libtk8.6.dylib 0x0000000112cd5b12 GetRGBA + 50
6 libtk8.6.dylib 0x0000000112cd5872 TkpGetColor + 482
7 libtk8.6.dylib 0x0000000112c143eb Tk_GetColor + 139
8 libtk8.6.dylib 0x0000000112c04612 Tk_Get3DBorder + 114
9 libtk8.6.dylib 0x0000000112c0448f Tk_Alloc3DBorderFromObj + 127
10 libtk8.6.dylib 0x0000000112c158b9 DoObjConfig + 1001
11 libtk8.6.dylib 0x0000000112c153b7 Tk_InitOptions + 359
12 libtk8.6.dylib 0x0000000112c15295 Tk_InitOptions + 69
13 libtk8.6.dylib 0x0000000112c454d5 CreateFrame + 1589
14 libtk8.6.dylib 0x0000000112c45799 TkListCreateFrame + 137
15 libtk8.6.dylib 0x0000000112c3d50a Initialize + 2122
16 _tkinter.cpython-312-darwin.so 0x000000010ecb978b Tcl_AppInit + 91
17 _tkinter.cpython-312-darwin.so 0x000000010ecb4ba9 Tkapp_New + 585
18 _tkinter.cpython-312-darwin.so 0x000000010ecb494e _tkinter_create_impl + 222
19 _tkinter.cpython-312-darwin.so 0x000000010ecb443c _tkinter_create + 172
20 Python 0x000000010edceeea cfunction_vectorcall_FASTCALL + 106
21 Python 0x000000010eede295 _PyEval_EvalFrameDefault + 54869
22 Python 0x000000010ed5d63f _PyObject_FastCallDictTstate + 95
23 Python 0x000000010edfdffb slot_tp_init + 203
24 Python 0x000000010edf2c58 type_call + 136
25 Python 0x000000010ed5d8b8 _PyObject_MakeTpCall + 136
26 Python 0x000000010eede469 _PyEval_EvalFrameDefault + 55337
27 Python 0x000000010eed09c5 PyEval_EvalCode + 309
28 Python 0x000000010ef5df2e run_mod + 158
29 Python 0x000000010ef5cff7 pyrun_file + 151
30 Python 0x000000010ef5c010 _PyRun_SimpleFileObject + 304
31 Python 0x000000010ef5bc50 _PyRun_AnyFileObject + 160
32 Python 0x000000010ef8b612 pymain_run_file_obj + 226
33 Python 0x000000010ef8b389 pymain_run_file + 89
34 Python 0x000000010ef8aaea Py_RunMain + 1402
35 Python 0x000000010ef8ad83 pymain_main + 35
36 Python 0x000000010ef8af5a Py_BytesMain + 42
37 dyld 0x00007ff80aff2386 start + 1942
)
libc++abi: terminating due to uncaught exception of type NSException