map3drendering/LandblockExtraction/DatEngine/PortalEngine.cs
Troispoils 18203c539f DatReader class heritage
Start Atlas maker class for generate atlas texture
2024-02-26 17:06:03 +01:00

44 lines
1.6 KiB
C#

using AC2RE.Definitions;
namespace LandblockExtraction.DatEngine {
public class PortalEngine : DatEngine {
private readonly DataId TERRAINDESCID = new DataId(0x12000000);
private readonly DataId SURFACEDESCID = new DataId(0x13000000);
private readonly DataId LANDSCAPEID = new DataId(0x36000000);
public CTerrainDesc cTerrainDesc { get; private set; }
public CSurfaceDesc cSurfaceDesc { get; private set; }
public LandScapeDefs landScapeDefs { get; private set; }
public PortalEngine() : base(@"X:\DatFiles\portal.dat") {
InitTerrainDesc();
InitSurfaceDesc();
InitLandScapeDesc();
}
public bool InitTerrainDesc() {
if (!datReader.contains(TERRAINDESCID)) return false;
using (var data = datReader.getFileReader(TERRAINDESCID)) {
if (data == null) return false;
cTerrainDesc = new(data);
}
return true;
}
public bool InitSurfaceDesc() {
if (!datReader.contains(SURFACEDESCID)) return false;
using (var data = datReader.getFileReader(SURFACEDESCID)) {
if (data == null) return false;
cSurfaceDesc = new(data);
}
return true;
}
public bool InitLandScapeDesc() {
if (!datReader.contains(LANDSCAPEID)) return false;
using (var data = datReader.getFileReader(LANDSCAPEID)) {
if (data == null) return false;
landScapeDefs = new(data);
}
return true;
}
}
}