Пиглет не рисует спрайты в правильных позициях - PullRequest
0 голосов
/ 21 апреля 2020

Эй, я застрял в этом вопросе довольно долго и надеялся, что кто-то может мне помочь:

Я использую pyglet и получил весь код, работающий в моем проекте (даже что У меня возникла проблема с), затем я перезапустил свой компьютер, и вдруг он не работал ...

Это l oop, который создает экземпляры моих объектов 'Letter':

main_st = ut.makeString("EXNXYXAXDAADUXMDXLGEQTAQXDDQSVXUTSXKHXHRXYFUXLXJUTHXYVADSUXKHUQUIXSJHXHDPKXFQUXILNXORMXRPL")
letter_list = []
for i in range(len(main_st)):
    letter_list.append(l.Letter(pyglet.resource.image("Letters/" + main_st[i] + ".png"),main_st[i],10,10))

И это конструктор класса Letter. Letter является подклассом pyglet.sprite.Sprite:

def __init__(self,im,iden,xx,yy):

        super(Letter,self).__init__(img=im,x=xx,y=yy)

Ни в одной точке программы я не изменяю координаты x и y спрайта, но когда я go, чтобы нарисовать их, независимо от того, что я положил для xx и yy, они всегда рисуются в одном и том же месте в окне, ЕСЛИ Я не делаю очень большое число для yy, и в этих случаях оно просто исчезает (я предполагаю, что это за пределами окна).

У меня есть каждая буква fla sh на экране в течение 1 секунды, и для этого используется мой метод on_draw

def on_draw():
    background.draw()

    if not key_manager.cur_letter == None:
        key_manager.cur_letter.draw()

(только key_manager. cur_letter рисуется, и это переключает каждый второй).

...