Цитата:
|
данном примере Game это document class и да он валяется на сцене.
|
Ну значит переписывайте плеер. Или сделайте отдельный документ-класс, который создает game и добавляет ее в список отображения.
Цитата:
|
Для чего я это сделал, все просто т.к. это классы, которые создаются единожды.
|
Третий вопрос был не про это. Третий вопрос был про ленивую инициализацию. Зачем вам там ленивая инициализация? Почему не создавать public static const instance : Game = new Game(...)? Или вы взяли пример кода и не разбирались, что он делает? Такой номер не пройдет. Кроме того, "все классы создаются единожды" - это недостаточная причина для создания singleton'а. Самым простым решением будет создать по одному экземпляру класса и не мучиться. Так как вам все равно создавать новый документ-класс, в его конструкторе можно создать Game, Hud и передать одному ссылку на другого (один - в конструкторе, другой - через setter).
Цитата:
|
Как сделать, так чтобы эти два классы смогли контактировать?
|
Передавайте им обычные ссылки. Через параметры конструктора. Через сеттеры и т.п. И вообще, какую задачу (большую, два синглтона - способ ее решения) вы пытаетесь решить? Зачем ваш hud хочет Game? Наверное, ему достаточно какого-то четко выделенного интерфейса. И hud'у без разницы, будет его реализовывать Game или кто-то еще. Ладно, еще понятно, зачем Game может понадобиться Hud. Ну сделайте фабрику, пусть Game вызывает craeateHud(this), когда ей понадобится (первый раз) hud. И вообще, в этом случае hud будет жить только внутри game (что правильно), а не своей собственной жизнью.