Class TLevelInfoList

Unit

Declaration

type TLevelInfoList = class(specialize TObjectList<TLevelInfo>)

Description

Hierarchy

  • TObject
  • TList
  • TObjectList
  • TLevelInfoList

Overview

Methods

Public function FindName(const AName: string): TLevelInfo;
Public procedure LoadFromFiles(const LevelsPath: string);
Public procedure LoadFromFiles;
Public procedure AddFromFile(const URL: string);
Public procedure SortByNumber;
Public procedure LoadFromConfig(const Config: TCastleConfig);
Public procedure SaveToConfig(const Config: TCastleConfig);

Description

Methods

Public function FindName(const AName: string): TLevelInfo;

raises Exception if such Name is not on the list.

Public procedure LoadFromFiles(const LevelsPath: string);

Add all available levels found by scanning for level.xml inside data directory. Overloaded version without parameter just looks inside 'castle-data:/'. For the specification of level.xml format see [https://castle-engine.io/creating_data_levels.php] .

This should be called after resources (creatures and items) are known, as they may be referenced by level.xml files. So call Resources.LoadFromFiles before calling this (if you want to use any creatures / items at all, of course).

All TLevelInfo.Played values are initially set to False. You must call LoadFromConfig after calling this to read TLevelInfo.Played values from user preferences file.

Public procedure LoadFromFiles;
 
Public procedure AddFromFile(const URL: string);

Add a single level information from the XML file at given location. The given XML file must have <level> root element and be written according to https://castle-engine.io/creating_data_levels.php .

Public procedure SortByNumber;

Sort by TLevelInfo.Number. Done automatically at the end of LoadFromFiles, you may want to call it explicitly after doing AddFromFile.

Public procedure LoadFromConfig(const Config: TCastleConfig);

For all available levels, read their TLevelInfo.Played from config file (like UserConfig).

This is useful only if you actually look at TLevelInfo.Played for any purpose (for example, to decide which levels are displayed in the menu). By default, our engine doesn't look at TLevelInfo.Played for anything.

Public procedure SaveToConfig(const Config: TCastleConfig);

Save Played properties of every level to a config file (like UserConfig).


Generated by PasDoc 0.15.0.