Add LevelInfo.

This commit is contained in:
Ray Koopa 2019-03-02 10:32:59 +01:00
parent bd3d40245b
commit c5391c3d66
2 changed files with 74 additions and 0 deletions

32
src/010_editor/LEV.bt Normal file
View File

@ -0,0 +1,32 @@
//------------------------------------------------
//--- 010 Editor v9.0.1 Binary Template
//
// File: LEV.bt
// Authors: Syroot
// Version: 0.1.0
// Purpose: Parse Worms LEV map terrain files.
// Category: Worms
// File Mask: *.bit;*.lev
// ID Bytes:
// History:
// 0.1.0 2019-01-28 Initial version.
//------------------------------------------------
LittleEndian();
uint landSeed;
uint objectSeed;
int cavern;
enum LANDSTYLE
{
SingleIsland_Cavern,
DoubleIsland_DoubleTunnel,
SingleIslandSmall_CavernWater,
DoubleIslandSmall_SingleTunnel,
} style;
int noBorder;
int objectPercent;
int bridgePercent;
int waterLevel;
int soilIndex;
int waterColor;

View File

@ -0,0 +1,42 @@
namespace Syroot.Worms
{
/// <summary>
/// Represents the map terrain configuration found in LEV and BIT files.
/// </summary>
public class LevelInfo
{
// ---- PROPERTIES ---------------------------------------------------------------------------------------------
public uint LandSeed { get; set; }
public uint ObjectSeed { get; set; }
public bool Cavern { get; set; }
public LandStyle Style { get; set; }
public bool NoBorder { get; set; }
public int ObjectPercent { get; set; }
public int BridgePercent { get; set; }
public int WaterLevel { get; set; }
public int SoilIndex { get; set; }
public int WaterColor { get; set; }
}
public enum LandStyle : int
{
SingleIsland,
DoubleIsland,
SingleSmallIsland,
DoubleSmallIsland,
Cavern,
SingleTunnel,
CavernWater,
DoubleTunnel
}
}