эта программа не работает, и я пытался изменить то, что мне показалось неправильным. Я пытаюсь просто сделать игру, в которой работает гравитация, и не знаю, нужно ли мне все менять, или просто две кавычки с двумя апострофами
from tkinter import *
HEIGHT = 500
WIDTH = 800
GRAV = 0
Q_PRESSED = False
# to make the window
window = Tk()
window.title("jumpy jump")
c = Canvas(window, width=WIDTH, height=HEIGHT, bg='white')
c.pack()
# to create the sprite
dude_id = c.create_rectangle(0, 30, 15, 100, outline='limegreen',
fill='limegreen')
dude_id2 = c.create_rectangle(45, 30, 60, 100, outline='limegreen',
fill='limegreen')
dude_id3 = c.create_oval(0, 0, 60, 60, outline='limegreen',
fill='limegreen')
def is_collided_with(dude, floor):
return self.rect.colliderect(dude.rect)
MID_X = WIDTH / 2
MID_Y = HEIGHT / 2
c.move(dude_id, MID_X, MID_Y)
c.move(dude_id2, MID_X, MID_Y)
c.move(dude_id3, MID_X, MID_Y)
floor_id = c.create_rectangle(0, 485, 800, 500, fill='black')
while Q_PRESSED != False:
if not dude.is_collided_with(floor):
GRAV =+ 1
c.move(dude_id, 0, GRAV)
c.move(dude_id2, 0, GRAV)
c.move(dude_id3, 0, GRAV)
if dude.is_collided_with(floor):
GRAV =-2
# to move
def move_dude(event):
if event.keysym == 'q':
Q_PRESSED = True
if event.keysym == 'Left':
c.move(dude_id, -10, GRAV)
c.move(dude_id2, -10, GRAV)
c.move(dude_id3, -10, GRAV)
if event.keysym == 'Right':
c.move(dude_id, 10, GRAV)
c.move(dude_id2, 10, GRAV)
c.move(dude_id3, 10, GRAV)
c.bind_all('<key>', move_dude)
У меня была некоторая помощь с книгой, для связующего ключевого материала, но она была сделана для детей или начинающих, так как я довольно новичок в Python. Любая помощь будет отличной!