* try to resolve merge conflict
* feat: TU19 (Dec 2014) Features & Content (#32)
* December 2014 files
* Working release build
* Fix compilation issues
* Add sound to Windows64Media
* Add DLC content and force Tutorial DLC
* Revert "Add DLC content and force Tutorial DLC"
This reverts commit 97a4399472.
* Disable broken light packing
* Disable breakpoint during DLC texture map load
Allows DLC loading but the DLC textures are still broken
* Fix post build not working
* ...
* fix vs2022 build
* fix cmake build
---------
Co-authored-by: Loki <lokirautio@gmail.com>
73 lines
1.9 KiB
C++
73 lines
1.9 KiB
C++
#pragma once
|
|
class LevelType;
|
|
|
|
class Abilities;
|
|
class LevelData;
|
|
|
|
#define _ADVENTURE_MODE_ENABLED
|
|
|
|
// 4J Stu - Was Java enum class
|
|
class GameType
|
|
{
|
|
public:
|
|
static GameType *NOT_SET;
|
|
static GameType *SURVIVAL;
|
|
static GameType *CREATIVE;
|
|
static GameType *ADVENTURE;
|
|
|
|
static void staticCtor();
|
|
|
|
private:
|
|
int id;
|
|
wstring name;
|
|
|
|
GameType(int id, const wstring &name);
|
|
|
|
public:
|
|
int getId();
|
|
wstring getName();
|
|
void updatePlayerAbilities(Abilities *abilities);
|
|
bool isAdventureRestricted();
|
|
bool isCreative();
|
|
bool isSurvival();
|
|
static GameType *byId(int id);
|
|
static GameType *byName(const wstring &name);
|
|
};
|
|
|
|
class LevelSettings
|
|
{
|
|
private:
|
|
__int64 seed;
|
|
GameType *gameType;
|
|
bool generateMapFeatures;
|
|
bool hardcore;
|
|
bool newSeaLevel;
|
|
LevelType *levelType;
|
|
bool allowCommands;
|
|
bool startingBonusItems; // 4J - brought forward from 1.3.2
|
|
wstring levelTypeOptions;
|
|
int m_xzSize; // 4J Added
|
|
int m_hellScale;
|
|
|
|
void _init(__int64 seed, GameType *gameType, bool generateMapFeatures, bool hardcore, bool newSeaLevel, LevelType *levelType, int xzSize, int hellScale); // 4J Added xzSize and hellScale param
|
|
|
|
public:
|
|
LevelSettings(__int64 seed, GameType *gameType, bool generateMapFeatures, bool hardcore, bool newSeaLevel, LevelType *levelType, int xzSize, int hellScale); // 4J Added xzSize and hellScale param
|
|
LevelSettings(LevelData *levelData);
|
|
LevelSettings *enableStartingBonusItems(); // 4J - brought forward from 1.3.2
|
|
LevelSettings *enableSinglePlayerCommands();
|
|
LevelSettings *setLevelTypeOptions(const wstring &options);
|
|
bool hasStartingBonusItems(); // 4J - brought forward from 1.3.2
|
|
__int64 getSeed();
|
|
GameType *getGameType();
|
|
bool isHardcore();
|
|
LevelType *getLevelType();
|
|
bool getAllowCommands();
|
|
bool isGenerateMapFeatures();
|
|
bool useNewSeaLevel();
|
|
int getXZSize(); // 4J Added
|
|
int getHellScale(); // 4J Added
|
|
static GameType *validateGameType(int gameType);
|
|
wstring getLevelTypeOptions();
|
|
};
|