Level Script API: Difference between revisions

From DF21 Wiki
(Created page with "== Properties == === minLayer === * Get only * Gets the minimum map layer (signed integer) * Usage example: <code>int i = level.minLayer;</code> === maxLayer === * Get only * Gets the maximum map layer (signed integer) * Usage example: <code>int i = level.maxLayer;</code> === sectorCount === * Get only * Gets the total count of sectors (signed integer) * Usage example: <code>int i = level.sectorCount</code> === secretCount === * Get only * Gets the total count of secr...")
 
No edit summary
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
Documentation for TFE Level Script API.
== Properties ==
== Properties ==
=== minLayer ===
=== minLayer ===
Line 20: Line 22:
* Usage example: <code>int i = level.secretCount</code>
* Usage example: <code>int i = level.secretCount</code>


=== texturetCount ===
=== textureCount ===
* Get only
* Get only
* Gets the total count of textures (signed integer)
* Gets the total count of textures (signed integer)
* Usage example: <code>int i = level.textureCount</code>
* Usage example: <code>int i = level.textureCount</code>


=== elevatorCount ===
* Get only
* Gets the total count of elevators (signed integer)
* Usage example: <code>int i = level.elevatorCount</code>
=== parallax ===
* Get only
* Gets the parallax (float2)
* Usage example:
<pre>
float2 pa = level.parallax;
float horzParallax = pa.x;
float vertParallax = pa.y;
</pre>
=== gravity ===
* Set only
* Sets the level's gravity (int)
* Usage example: <code>level.gravity = 80;</code>
=== projectileGravity ===
* Set only
* Sets the projectile gravity (int)
* Usage example: <code>level.projectileGravity = 60;</code>
== Special sector getters ==
=== bossSector ===
* Gets the boss sector (Sector)
* Usage example: <code>Sector bossSect = level.bossSector;</code>
=== mohcSector ===
* Gets the mohc sector (Sector)
* Usage example: <code>Sector mohcSect = level.mohcSector;</code>
=== completeSector ===
* Gets the complete sector (Sector)
* Usage example: <code>Sector completeSect = level.completeSector;</code>
== Methods ==
=== getSector(int) ===
* Return value: Sector
* Parameters: sector Id (int)
* Usage example: <code>Sector mySector = level.getSector(14);</code>


=== getElevator(int) ===
* Return value: Elevator
* Parameters: elevator Id (int)
* Usage example: <code>Elevator myElev = level.getElevator(9);</code>


== Functions ==
=== findConnectedSectors(Sector, uint, array<Sector>) ===
=== getSector ===
* Return value: void
* Parameters:
** the starting sector (Sector)
** properties to match on (uint); see sector properties enum
** an array of sectors that will be populated with sectors which are connected (adjoined) to the starting sector
* Usage example: get sector 5, then get all the sectors adjoined to it
<pre>
Sector mySector = level.getSector(5);
array<Sector> sectorList;
level.findConnectedSectors(mySector, 0, sectorList);
system.print("My sector has {} adjoining sectors", sectorList.length);
</pre>

Latest revision as of 10:58, 28 March 2025

Documentation for TFE Level Script API.

Properties

minLayer

  • Get only
  • Gets the minimum map layer (signed integer)
  • Usage example: int i = level.minLayer;

maxLayer

  • Get only
  • Gets the maximum map layer (signed integer)
  • Usage example: int i = level.maxLayer;

sectorCount

  • Get only
  • Gets the total count of sectors (signed integer)
  • Usage example: int i = level.sectorCount

secretCount

  • Get only
  • Gets the total count of secrets (signed integer)
  • Usage example: int i = level.secretCount

textureCount

  • Get only
  • Gets the total count of textures (signed integer)
  • Usage example: int i = level.textureCount

elevatorCount

  • Get only
  • Gets the total count of elevators (signed integer)
  • Usage example: int i = level.elevatorCount

parallax

  • Get only
  • Gets the parallax (float2)
  • Usage example:
float2 pa = level.parallax;
float horzParallax = pa.x;
float vertParallax = pa.y;

gravity

  • Set only
  • Sets the level's gravity (int)
  • Usage example: level.gravity = 80;

projectileGravity

  • Set only
  • Sets the projectile gravity (int)
  • Usage example: level.projectileGravity = 60;

Special sector getters

bossSector

  • Gets the boss sector (Sector)
  • Usage example: Sector bossSect = level.bossSector;

mohcSector

  • Gets the mohc sector (Sector)
  • Usage example: Sector mohcSect = level.mohcSector;

completeSector

  • Gets the complete sector (Sector)
  • Usage example: Sector completeSect = level.completeSector;

Methods

getSector(int)

  • Return value: Sector
  • Parameters: sector Id (int)
  • Usage example: Sector mySector = level.getSector(14);

getElevator(int)

  • Return value: Elevator
  • Parameters: elevator Id (int)
  • Usage example: Elevator myElev = level.getElevator(9);

findConnectedSectors(Sector, uint, array<Sector>)

  • Return value: void
  • Parameters:
    • the starting sector (Sector)
    • properties to match on (uint); see sector properties enum
    • an array of sectors that will be populated with sectors which are connected (adjoined) to the starting sector
  • Usage example: get sector 5, then get all the sectors adjoined to it
Sector mySector = level.getSector(5);
array<Sector> sectorList;
level.findConnectedSectors(mySector, 0, sectorList);
system.print("My sector has {} adjoining sectors", sectorList.length);