Ваш отступ отключен, хотя это должно привести к ошибке;
def check_clicked(self,event):
if event.type == pg.MOUSEBUTTONDOWN and event.button == 1:
if self.rect.collidepoint(event.pos):
self.clicked = True
elif event.type == pg.MOUSEBUTTONUP: #<<<<< Change indentation here
if self.clicked == True:
return True
else:
return False
Предполагая, что ваш отступ правильный, я считаю, что проблема в том, что вы на самом деле не определяете self.clicked
, просто проверяете, что это правдаof not.
Попробуйте выполнить следующее:
elif event.type == pg.MOUSEBUTTONUP:
self.clicked = True
if self.clicked == True:
return True
else:
return False
Несмотря на то, что избыточно проверять, является ли self.clicked
истинным, перед его определением.Просто используйте;
def check_clicked(self,event):
if event.type == pg.MOUSEBUTTONDOWN and event.button == 1:
if self.rect.collidepoint(event.pos):
self.clicked = True
elif event.type == pg.MOUSEBUTTONUP:
self.clicked = True
return True