Porytiles
Loading...
Searching...
No Matches
porytiles2::LayerModeConverter Class Reference

#include <layer_mode_converter.hpp>

Public Member Functions

 LayerModeConverter (gsl::not_null< TextFormatter * > format, gsl::not_null< UserDiagnostics * > diag, gsl::not_null< TilePrinter * > tile_printer)
 
ChainableResult< std::vector< TilemapEntry > > triple_layerize (const PorymapTilesetComponent &component)
 Converts a tileset component to triple-layer format.
 
ChainableResult< std::vector< TilemapEntry > > dual_layerize (const PorymapTilesetComponent &component)
 TODO.
 

Detailed Description

Definition at line 17 of file layer_mode_converter.hpp.

Constructor & Destructor Documentation

◆ LayerModeConverter()

porytiles2::LayerModeConverter::LayerModeConverter ( gsl::not_null< TextFormatter * >  format,
gsl::not_null< UserDiagnostics * >  diag,
gsl::not_null< TilePrinter * >  tile_printer 
)
inlineexplicit

Definition at line 19 of file layer_mode_converter.hpp.

Member Function Documentation

◆ dual_layerize()

ChainableResult< std::vector< TilemapEntry > > porytiles2::LayerModeConverter::dual_layerize ( const PorymapTilesetComponent component)

TODO.

TODO

Parameters
componentTODO
Precondition
asd
Returns
A dual-layerized TilemapEntry vector

Definition at line 83 of file layer_mode_converter.cpp.

◆ triple_layerize()

ChainableResult< std::vector< TilemapEntry > > porytiles2::LayerModeConverter::triple_layerize ( const PorymapTilesetComponent component)

Converts a tileset component to triple-layer format.

Converts dual-layer metatiles (8 entries per metatile) to triple-layer metatiles (12 entries per metatile) by inserting transparent tilemap entries based on each metatile's LayerType attribute. If the component is already in triple-layer format, it is returned unchanged.

The conversion strategy depends on the metatile's LayerType:

  • normal: Inserts 4 transparent entries at the beginning, followed by the 8 original entries
  • covered: Copies the 8 original entries first, then appends 4 transparent entries at the end
  • split: Copies the first 4 entries, inserts 4 transparent entries in the middle, then copies the last 4 entries
Parameters
componentThe tileset component to convert
Returns
A triple-layerized TilemapEntry vector

Definition at line 14 of file layer_mode_converter.cpp.


The documentation for this class was generated from the following files: