def next_scene(self, scene_name): val = Map.scenes.get(scene_name) return val
def opening_scene(self): return self.next_scene(self.start_scene) a_map = Map('central_corridor') a_game = Engine(a_map) amap jest tworzona instancja klasy Map z argumentem 'centralcorridor' gdzie jest ładowany jako startscene.
ta startscene jest teraz tworzona jako instancja klasy Engine gdzie scenemap jest brane z argumentu podanego przy tworzeniu instancji i zapisywany w zmiennej self.scenemap tak?
@ponuryrolnik: Map ma dict ze scenami. Tworzysz instancje Map pod nazwa a_map z argumentem central_corridor i przypisujesz ta nazwe do start_scene . Tu sie konczy inicjalizacja a_map. Tworzymy instancje Engine a_game z argumentem a_map ktory jest przypisany do scene_map. Tu sie konczy inicjalizacja a_game. Teraz jak patrzymy co z tego wyszlo: Obiekt a_game typu Engine deleguje operowanie scenami do swojej zaleznosci a_map. Obiekt a_game nie musi znac
class Engine(object):
def __init__(self, scene_map):
self.scene_map = scene_map
def play(self):
current_scene = self.scene_map.opening_scene()
class Map(object):
scenes = {
'central_corridor': CentralCorridor(),
}
def __init__(self, start_scene):
self.start_scene = start_scene
def next_scene(self, scene_name):
val = Map.scenes.get(scene_name)
return val
def opening_scene(self):
return self.next_scene(self.start_scene)
a_map = Map('central_corridor')a_game = Engine(a_map)
amap jest tworzona instancja klasy Map z argumentem 'centralcorridor' gdzie jest ładowany jako startscene.
ta startscene jest teraz tworzona jako instancja klasy Engine gdzie scenemap jest brane z argumentu podanego przy tworzeniu instancji i zapisywany w zmiennej self.scenemap tak?
ciężko jakoś ogarnąć drzewo zależności...
Komentarz usunięty przez autora
amap = Map('centralcorridor')
agame = Engine(amap)
a tutaj, czy nie robimy klasy matki Map dla klasy Engine?
Komentarz usunięty przez autora
a_mapz argumentemcentral_corridori przypisujesz ta nazwe dostart_scene. Tu sie konczy inicjalizacjaa_map. Tworzymy instancje Enginea_gamez argumentema_mapktory jest przypisany doscene_map. Tu sie konczy inicjalizacjaa_game.Teraz jak patrzymy co z tego wyszlo:
Obiekt
a_gametypu Engine deleguje operowanie scenami do swojej zaleznoscia_map. Obiekta_gamenie musi znac