Table of Contents

Class ProvinceMapParser

Namespace
Map.Loading.Images
Assembly
MapAssembly.dll

High-performance province map parser that combines BMP/PNG parsing with province definitions Maps RGB colors to province IDs using definition.csv data Supports both BMP and PNG formats via auto-detection

public static class ProvinceMapParser
Inheritance
object
ProvinceMapParser

Methods

CalculateProvinceStats(ProvinceMapResult, int)

Calculate statistics for a province

public static ProvinceMapParser.ProvinceStats CalculateProvinceStats(ProvinceMapParser.ProvinceMapResult mapResult, int provinceID)

Parameters

mapResult ProvinceMapParser.ProvinceMapResult
provinceID int

Returns

ProvinceMapParser.ProvinceStats

FindProvincePixels(ProvinceMapResult, int, Allocator)

Find all pixels belonging to a specific province

public static NativeList<PixelCoord> FindProvincePixels(ProvinceMapParser.ProvinceMapResult mapResult, int provinceID, Allocator allocator)

Parameters

mapResult ProvinceMapParser.ProvinceMapResult
provinceID int
allocator Allocator

Returns

NativeList<PixelCoord>

ParseProvinceMap(NativeArray<byte>, NativeArray<byte>, Allocator)

Parse province map by combining BMP data with definition CSV (legacy method)

public static ProvinceMapParser.ProvinceMapResult ParseProvinceMap(NativeArray<byte> bmpFileData, NativeArray<byte> definitionCsvData, Allocator allocator)

Parameters

bmpFileData NativeArray<byte>
definitionCsvData NativeArray<byte>
allocator Allocator

Returns

ProvinceMapParser.ProvinceMapResult

ParseProvinceMap(NativeSlice<byte>, NativeSlice<byte>, Allocator)

Parse province map by combining BMP data with definition CSV (legacy method)

public static ProvinceMapParser.ProvinceMapResult ParseProvinceMap(NativeSlice<byte> bmpFileData, NativeSlice<byte> definitionCsvData, Allocator allocator)

Parameters

bmpFileData NativeSlice<byte>
definitionCsvData NativeSlice<byte>
allocator Allocator

Returns

ProvinceMapParser.ProvinceMapResult

ParseProvinceMapImageOnly(NativeArray<byte>, Allocator)

Parse province map image only (without definition CSV) Useful for map-only mode where we just need to display the map

public static ProvinceMapParser.UnifiedProvinceMapResult ParseProvinceMapImageOnly(NativeArray<byte> imageFileData, Allocator allocator)

Parameters

imageFileData NativeArray<byte>
allocator Allocator

Returns

ProvinceMapParser.UnifiedProvinceMapResult

ParseProvinceMapUnified(NativeArray<byte>, NativeArray<byte>, Allocator)

Parse province map from any supported image format (BMP or PNG) Auto-detects format from file data

public static ProvinceMapParser.UnifiedProvinceMapResult ParseProvinceMapUnified(NativeArray<byte> imageFileData, NativeArray<byte> definitionCsvData, Allocator allocator)

Parameters

imageFileData NativeArray<byte>
definitionCsvData NativeArray<byte>
allocator Allocator

Returns

ProvinceMapParser.UnifiedProvinceMapResult

TryGetProvinceAt(ProvinceMapResult, int, int, out int)

Get province ID at specific pixel coordinates

public static bool TryGetProvinceAt(ProvinceMapParser.ProvinceMapResult mapResult, int x, int y, out int provinceID)

Parameters

mapResult ProvinceMapParser.ProvinceMapResult
x int
y int
provinceID int

Returns

bool

TryGetProvinceAtUnified(UnifiedProvinceMapResult, int, int, out int)

Get province ID at specific pixel coordinates (unified version)

public static bool TryGetProvinceAtUnified(ProvinceMapParser.UnifiedProvinceMapResult mapResult, int x, int y, out int provinceID)

Parameters

mapResult ProvinceMapParser.UnifiedProvinceMapResult
x int
y int
provinceID int

Returns

bool

ValidateProvinceMap(ProvinceMapResult, Allocator)

Validate province map integrity Checks for unmapped colors, duplicate colors, etc.

public static ProvinceMapParser.ProvinceMapValidationResult ValidateProvinceMap(ProvinceMapParser.ProvinceMapResult mapResult, Allocator allocator)

Parameters

mapResult ProvinceMapParser.ProvinceMapResult
allocator Allocator

Returns

ProvinceMapParser.ProvinceMapValidationResult