first commit
This commit is contained in:
118
Minecraft.World/LevelType.cpp
Normal file
118
Minecraft.World/LevelType.cpp
Normal file
@@ -0,0 +1,118 @@
|
||||
#include "stdafx.h"
|
||||
#include "net.minecraft.world.level.h"
|
||||
|
||||
|
||||
// public static final LevelType[] levelTypes = new LevelType[16];
|
||||
//
|
||||
//
|
||||
|
||||
//
|
||||
//
|
||||
// private final String generatorName;
|
||||
// private final int version;
|
||||
// private boolean selectable;
|
||||
// private boolean replacement;
|
||||
|
||||
LevelType *LevelType::levelTypes[16];// = new LevelType[16];
|
||||
LevelType *LevelType::lvl_normal=NULL;// = new LevelType(0, "default", 1).setHasReplacement();
|
||||
LevelType *LevelType::lvl_flat=NULL;// = new LevelType(1, "flat");
|
||||
LevelType *LevelType::lvl_largeBiomes = NULL;// = new LevelType(2, "largeBiomes");
|
||||
LevelType *LevelType::lvl_normal_1_1=NULL;// = new LevelType(8, "default_1_1", 0).setSelectableByUser(false);
|
||||
|
||||
void LevelType::staticCtor()
|
||||
{
|
||||
for(int i=0;i<16;i++) levelTypes[i]=NULL;
|
||||
lvl_normal = new LevelType(0, L"default", 1);
|
||||
lvl_normal->setHasReplacement();
|
||||
lvl_flat = new LevelType(1, L"flat");
|
||||
lvl_largeBiomes = new LevelType(2, L"largeBiomes");
|
||||
lvl_normal_1_1 = new LevelType(8, L"default_1_1", 0);
|
||||
lvl_normal_1_1->setSelectableByUser(false);
|
||||
}
|
||||
|
||||
LevelType::LevelType(int id, wstring generatorName)
|
||||
{
|
||||
init(id, generatorName, 0);
|
||||
}
|
||||
|
||||
LevelType::LevelType(int id, wstring generatorName, int version)
|
||||
{
|
||||
m_generatorName = generatorName;
|
||||
m_version = version;
|
||||
m_selectable = true;
|
||||
levelTypes[id] = this;
|
||||
}
|
||||
|
||||
|
||||
void LevelType::init(int id, wstring generatorName, int version)
|
||||
{
|
||||
m_generatorName = generatorName;
|
||||
m_version = version;
|
||||
m_selectable = true;
|
||||
levelTypes[id] = this;
|
||||
}
|
||||
|
||||
wstring LevelType::getGeneratorName()
|
||||
{
|
||||
return m_generatorName;
|
||||
}
|
||||
|
||||
wstring LevelType::getDescriptionId()
|
||||
{
|
||||
return L"generator." + m_generatorName;
|
||||
}
|
||||
|
||||
int LevelType::getVersion()
|
||||
{
|
||||
return m_version;
|
||||
}
|
||||
|
||||
LevelType *LevelType::getReplacementForVersion(int oldVersion)
|
||||
{
|
||||
if (this == lvl_normal && oldVersion == 0)
|
||||
{
|
||||
return lvl_normal_1_1;
|
||||
}
|
||||
return this;
|
||||
}
|
||||
|
||||
LevelType *LevelType::setSelectableByUser(bool selectable)
|
||||
{
|
||||
m_selectable = selectable;
|
||||
return this;
|
||||
}
|
||||
|
||||
bool LevelType::isSelectable()
|
||||
{
|
||||
return m_selectable;
|
||||
}
|
||||
|
||||
LevelType *LevelType::setHasReplacement()
|
||||
{
|
||||
m_replacement = true;
|
||||
return this;
|
||||
}
|
||||
|
||||
bool LevelType::hasReplacement()
|
||||
{
|
||||
return m_replacement;
|
||||
}
|
||||
|
||||
LevelType *LevelType::getLevelType(wstring name)
|
||||
{
|
||||
if(name.length()>0)
|
||||
{
|
||||
for (int i = 0; i < 16; i++)
|
||||
{
|
||||
wstring genname=levelTypes[i]->m_generatorName;
|
||||
|
||||
if (levelTypes[i] != NULL && (genname.compare(name)==0))
|
||||
{
|
||||
return levelTypes[i];
|
||||
}
|
||||
}
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user