ya2 · news · projects · code · about

gettext: --no-location
[pmachines.git] / pmachines / items / background.py
CommitLineData
4894bb48 1from itertools import product
bf77b5d5 2from ya2.utils.gfx import GfxTools
4894bb48
FC
3
4
5class Background:
6
2c2198af 7 def __init__(self, name):
bf77b5d5 8 self._root = GfxTools.build_empty_node('background_root')
5964572b 9 self._root.reparent_to(render)
a5dc83f4 10 ncols, nrows = 16, 8
4894bb48
FC
11 start_size, end_size = 5, 2.5
12 offset = 5
13 for col, row in product(range(ncols), range(nrows)):
2c2198af 14 model = GfxTools.build_model(f'assets/models/bam/backgrounds/{name}/background.bam')
4894bb48 15 model.set_scale(end_size / start_size)
5964572b 16 model.reparent_to(self._root)
4894bb48
FC
17 total_width, total_height = end_size * ncols, end_size * nrows
18 left, bottom = -total_width/2, -total_height/2
1be87278 19 model.set_pos(left + end_size * col, offset, bottom + end_size * row)
5964572b
FC
20 self._root.clear_model_nodes()
21 self._root.flatten_strong()
bf77b5d5 22 self._root.set_srgb_textures()
5964572b
FC
23
24 def destroy(self):
25 self._root.remove_node()