#python #function #class
Вопрос:
в настоящее время я создаю программу на python с помощью pygame. И в настоящее время я пишу класс, который проверяет, есть ли какие-либо объекты в пределах досягаемости.
это вызов в цикле программы, он хочет, чтобы я прошел через имя класса, которое я не должен был делать….. верно?
self.AuraDetection([cat.pos, mouse.pos], cat, mouse)
Ниже приведена функция, переменная self.counter не распознается, даже если инициализация переменной находится в функции инициализации класса.
def AuraDetection(self, animals, cat, mouse):
if abs(animals[0][0] - animals[1][0]) <= 150 and abs(animals[0][1] - animals[1][1]) <= 150 and self.counter == 0:
cat.StateChange()
self.counter = 1
Вот функция инициализации
def __init__(self):
super(self)
screen = pg.display.get_surface()
self.width = 800
self.height = 600
self.fps = 60
self.counter = 0
все они относятся к одному и тому же классу.
https://github.com/freercurse/Boids/blob/master/main.py
вот ссылка на весь код в этом файле, если вы хотите просмотреть его целиком
Комментарии:
1. Вы называете это неправильным.
main.start(main)
должно бытьmain().start()
2. огромное спасибо, все исправил 🙂