public void pre_load_block_data(platform_data.EPlatformType _prj_platform) { if (_prj_platform == platform_data.EPlatformType.pt_NES && platform_data.get_platform_type() != platform_data.EPlatformType.pt_NES) { m_dict_CHR_palette_ind = new Dictionary <int, int>(platform_data.get_max_blocks_UINT_cnt()); } m_map_data_app_src = map_data_config_provider.config_app(_prj_platform); m_map_data_app_dst = map_data_config_provider.config_app(platform_data.get_platform_type()); if (m_inner_tiles_data == null) { m_inner_tiles_data = new List <tiles_data>(16); } tiles_data inner_tiles_data = new tiles_data(true); inner_tiles_data.palettes_arr.Clear(); m_inner_tiles_data.Add(inner_tiles_data); if (m_palettes != null) { inner_tiles_data.palettes_arr.AddRange(m_palettes); m_palettes.Clear(); m_palettes = null; } }
public uint repack(map_data_config_base _src, uint _map_data) { uint res = 0; bit_field bf_src; bit_field bf_dst; for (int i = 0; i < m_data.Length; i++) { bf_src = _src.m_data[i]; bf_dst = m_data[i]; if (bf_src.valid() && bf_dst.valid()) { res |= bf_dst.pack(bf_src.unpack(_map_data)); } } return(res); }