|
@@ -60,13 +60,19 @@ class EditLayer(BaseEditLayer):
|
60
|
60
|
class BackgroundLayer(cocos.layer.Layer):
|
61
|
61
|
def __init__(
|
62
|
62
|
self,
|
|
63
|
+ config: Config,
|
63
|
64
|
layer_manager: LayerManager,
|
64
|
65
|
background_sprite: cocos.sprite.Sprite,
|
65
|
66
|
) -> None:
|
66
|
67
|
super().__init__()
|
|
68
|
+ self.config = config
|
67
|
69
|
self.layer_manager = layer_manager
|
68
|
70
|
self.background_sprite = background_sprite
|
69
|
71
|
self.last_interior_draw_timestamp = 0
|
|
72
|
+ self.draw_interiors_gap = self.config.resolve(
|
|
73
|
+ 'game.building.draw_interior_gap',
|
|
74
|
+ 2,
|
|
75
|
+ )
|
70
|
76
|
self.interior_manager = InteriorManager(TileMap(
|
71
|
77
|
layer_manager.middleware.get_map_file_path(),
|
72
|
78
|
))
|
|
@@ -77,8 +83,7 @@ class BackgroundLayer(cocos.layer.Layer):
|
77
|
83
|
|
78
|
84
|
def draw_interiors(self):
|
79
|
85
|
now = time.time()
|
80
|
|
- # FIXME: config
|
81
|
|
- if now - self.last_interior_draw_timestamp > 2:
|
|
86
|
+ if now - self.last_interior_draw_timestamp > self.draw_interiors_gap:
|
82
|
87
|
self.last_interior_draw_timestamp = now
|
83
|
88
|
subject_grid_positions = [
|
84
|
89
|
a.subject.position for a
|
|
@@ -127,7 +132,7 @@ class TileLayerManager(LayerManager):
|
127
|
132
|
super().init()
|
128
|
133
|
self.interior_sprite = self.middleware.get_interior_sprite()
|
129
|
134
|
background_sprite = self.middleware.get_background_sprite()
|
130
|
|
- self.background_layer = BackgroundLayer(self, background_sprite)
|
|
135
|
+ self.background_layer = BackgroundLayer(self.config, self, background_sprite)
|
131
|
136
|
self.background_layer.add(background_sprite)
|
132
|
137
|
self.ground_layer = self.middleware.get_ground_layer()
|
133
|
138
|
self.top_layer = self.middleware.get_top_layer()
|