|
@@ -73,9 +73,14 @@ class BackgroundLayer(cocos.layer.Layer):
|
73
|
73
|
'game.building.draw_interior_gap',
|
74
|
74
|
2,
|
75
|
75
|
)
|
76
|
|
- self.interior_manager = InteriorManager(TileMap(
|
77
|
|
- layer_manager.middleware.get_map_file_path(),
|
|
76
|
+ self.background_image = Image.open(os.path.join(
|
|
77
|
+ self.layer_manager.middleware.map_dir_path,
|
|
78
|
+ 'background.png',
|
78
|
79
|
))
|
|
80
|
+ self.interior_manager = InteriorManager(
|
|
81
|
+ TileMap(layer_manager.middleware.get_map_file_path()),
|
|
82
|
+ original_image=self.background_image,
|
|
83
|
+ )
|
79
|
84
|
self.map_tile_width = self.layer_manager.middleware.get_cell_width()
|
80
|
85
|
self.map_tile_height = self.layer_manager.middleware.get_cell_height()
|
81
|
86
|
|
|
@@ -94,19 +99,15 @@ class BackgroundLayer(cocos.layer.Layer):
|
94
|
99
|
interiors = self.interior_manager.get_interiors(
|
95
|
100
|
where_positions=subject_grid_positions)
|
96
|
101
|
|
|
102
|
+ # FIXME BS 2018-01-25: if not, put original background image
|
97
|
103
|
if interiors:
|
98
|
|
- image = Image.open(os.path.join(
|
99
|
|
- self.layer_manager.middleware.map_dir_path,
|
100
|
|
- 'background.png',
|
101
|
|
- ))
|
102
|
104
|
image_fake_file = io.BytesIO()
|
103
|
|
- self.interior_manager.update_image_for_interiors(
|
104
|
|
- image,
|
|
105
|
+ new_background_image = self.interior_manager.update_image_for_interiors(
|
105
|
106
|
interiors,
|
106
|
107
|
self.map_tile_width,
|
107
|
108
|
self.map_tile_height,
|
108
|
109
|
)
|
109
|
|
- image.save(image_fake_file, format='PNG')
|
|
110
|
+ new_background_image.save(image_fake_file, format='PNG')
|
110
|
111
|
self.background_sprite.image = pyglet.image.load(
|
111
|
112
|
'new_background.png',
|
112
|
113
|
file=image_fake_file,
|