Each entry on a row starts with one of the following symbols.
- . = Empty tile
- * = Wall. The outer edge must be surrounded by a wall.
- ^ = Entrance facing up. Followed by ball speed 0 - Normal, 1 - Fast, 2 - Slow.
- v = Entrance facing down. Followed by ball speed 0 - Normal, 1 - Fast, 2 - Slow.
- < = Entrance facing left. Followed by ball speed 0 - Normal, 1 - Fast, 2 - Slow.
- > = Entrance facing right. Followed by ball speed 0 - Normal, 1 - Fast, 2 - Slow.
Other initial object type symbols are:
- \ = Bouncer NW_SE
- / = Bouncer NE_SW
- ] = Shifter CW
- [ = Shifter CCW
- } = Twirler CW
- { = Twirler CCW
- + = Splitter
- - = Bouncer W_E
- | = Bouncer N_S
Following any of the object type symbols is a second symbol from the list above. It is usually the same as the first symbol, except in the case of a Scrambler.
The third symbol is a text encoded bitfield. It is made by taking the result of the bitfield and subtracting '0' from it.
int value = *row - '0';
- tileInfo.origSwitcher = (value & 0x1) == 1;
- tileInfo.switcher = (value & 0x2) == 2;
- tileInfo.forceExposed = (value & 0x4) == 4;
- tileInfo.scrambler = (value & 0x8) == 8;