Я делаю игру на Python с помощью Pyglet и в настоящее время пытаюсь использовать некоторые экраны меню или конечные экраны. Я создал класс Screen, и экраны (например, GameScreen) наследуются от него. Класс Screen имеет атрибут класса s, который определяет текущий отображаемый экран. Как мне назначить ему какой-нибудь объект Screen?
Это мой код:
# main.py
import pyglet
from screen import *
w = pyglet.window.Window()
@w.event
def on_draw():
w.clear()
Screen.s.on_draw()
pyglet.app.run()
# screen.py
class Screen:
s = MainMenuScreen() # of course doesn't work
def __init__(self): pass
def on_draw(self): pass
class MainMenuScreen(Screen):
def __init__(self):
self.buttons = [...]
...
def on_draw(self):
for button in self.buttons: button.draw()
class GameScreen(Screen):
def __init__(self):
self.player = Player(0, 0)
...
def on_draw(self):
self.player.draw()
Подробнее здесь: https://stackoverflow.com/questions/786 ... ited-class
Атрибут класса Python со значением класса, унаследованного от типа ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Как я могу использовать общий тип для обозначения типа из унаследованного класса в С#?
Anonymous » » в форуме C# - 0 Ответы
- 9 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Атрибут класса Python: как неявно ссылаться на атрибут родительского класса? [дублировать]
Anonymous » » в форуме Python - 0 Ответы
- 4 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Почему вывод типа терпит неудачу при вызове унаследованного метода в этом контексте?
Anonymous » » в форуме C# - 0 Ответы
- 5 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Выделение неизвестного унаследованного класса из другой динамической библиотеки
Anonymous » » в форуме C++ - 0 Ответы
- 18 Просмотры
-
Последнее сообщение Anonymous
-