Unit Breakout.Levels
Description
Three fixed formations with seeded height-weighted classes and premium spacing.
Source: src/Breakout.Levels.pas (line 2).
Uses
Overview
Functions and Procedures
function GenerateLegacyLevel(Seed: Cardinal; Level: Integer): TArray<TBrick>; |
function GenerateLevel(Seed: Cardinal; Level: Integer): TArray<TBrick>; |
Constants
CampaignLevelCount = 3; |
Description
Functions and Procedures
function GenerateLegacyLevel(Seed: Cardinal; Level: Integer): TArray<TBrick>; |
|
Creates 96 active bricks, with stable IDs and definitions from Breakout.Bricks. The local random stream starts at Seed xor Level. This is one legacy grid recipe, not a template library or endless-level system. ReturnsA newly allocated array owned through normal dynamic-array lifetime. Source: src/Breakout.Levels.pas (line 16). |
function GenerateLevel(Seed: Cardinal; Level: Integer): TArray<TBrick>; |
|
Creates an independent board with row-major IDs and centralized rewards. Keeps legacy-grid/twin-gates/diamond geometry; all three boards use seeded class weights by relative formation height. Silver/gold cannot occupy horizontal/vertical neighboring cells, including mixed pairs; diagonals are allowed. Conflicting premium draws become a weighted nonpremium class. Restart with the same Seed/Level reproduces the entire board. The historical GenerateLegacyLevel remains available as a reference, without rebalancing. Raises EArgumentOutOfRangeException outside 1..CampaignLevelCount. Source: src/Breakout.Levels.pas (line 26). |
Constants
CampaignLevelCount = 3; |
|
Number of available boards; LevelCount may select a prefix of them. Source: src/Breakout.Levels.pas (line 10). |
Generated by PasDoc 1.0.4.