feat: TU19 (Dec 2014) Features & Content (#155)
* 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>
This commit is contained in:
@@ -10,9 +10,10 @@
|
||||
|
||||
NetherBridgeFeature::NetherBridgeFeature() : StructureFeature()
|
||||
{
|
||||
bridgeEnemies.push_back(new Biome::MobSpawnerData(eTYPE_BLAZE, 10, 2, 3));
|
||||
bridgeEnemies.push_back(new Biome::MobSpawnerData(eTYPE_PIGZOMBIE, 10, 4, 4));
|
||||
bridgeEnemies.push_back(new Biome::MobSpawnerData(eTYPE_LAVASLIME, 3, 4, 4));
|
||||
bridgeEnemies.push_back(new Biome::MobSpawnerData(eTYPE_BLAZE, 10, 2, 3));
|
||||
bridgeEnemies.push_back(new Biome::MobSpawnerData(eTYPE_PIGZOMBIE, 5, 4, 4));
|
||||
bridgeEnemies.push_back(new Biome::MobSpawnerData(eTYPE_SKELETON, 10, 4, 4));
|
||||
bridgeEnemies.push_back(new Biome::MobSpawnerData(eTYPE_LAVASLIME, 3, 4, 4));
|
||||
isSpotSelected=false;
|
||||
netherFortressPos = NULL;
|
||||
|
||||
@@ -23,6 +24,11 @@ NetherBridgeFeature::~NetherBridgeFeature()
|
||||
if( netherFortressPos != NULL ) delete netherFortressPos;
|
||||
}
|
||||
|
||||
wstring NetherBridgeFeature::getFeatureName()
|
||||
{
|
||||
return L"Fortress";
|
||||
}
|
||||
|
||||
vector<Biome::MobSpawnerData *> *NetherBridgeFeature::getBridgeEnemies()
|
||||
{
|
||||
return &bridgeEnemies;
|
||||
@@ -48,7 +54,7 @@ bool NetherBridgeFeature::isFeatureChunk(int x, int z, bool bIsSuperflat)
|
||||
|
||||
isSpotSelected = true;
|
||||
}
|
||||
|
||||
|
||||
bool forcePlacement = false;
|
||||
LevelGenerationOptions *levelGenOptions = app.getLevelGenerationOptions();
|
||||
if( levelGenOptions != NULL )
|
||||
@@ -57,7 +63,7 @@ bool NetherBridgeFeature::isFeatureChunk(int x, int z, bool bIsSuperflat)
|
||||
}
|
||||
|
||||
if(forcePlacement || (x == netherFortressPos->x && z == netherFortressPos->z) ) return true;
|
||||
|
||||
|
||||
#ifdef _LARGE_WORLDS
|
||||
int xzSize = level->dimension->getXZSize();
|
||||
if(xzSize > 30)
|
||||
@@ -90,7 +96,7 @@ bool NetherBridgeFeature::isFeatureChunk(int x, int z, bool bIsSuperflat)
|
||||
|
||||
StructureStart *NetherBridgeFeature::createStructureStart(int x, int z)
|
||||
{
|
||||
return new NetherBridgeStart(level, random, x, z);
|
||||
return new NetherBridgeStart(level, random, x, z);
|
||||
}
|
||||
|
||||
void NetherBridgeFeature::clearCachedBuildings()
|
||||
@@ -98,22 +104,27 @@ void NetherBridgeFeature::clearCachedBuildings()
|
||||
cachedStructures.clear();
|
||||
}
|
||||
|
||||
NetherBridgeFeature::NetherBridgeStart::NetherBridgeStart(Level *level, Random *random, int chunkX, int chunkZ) : StructureStart()
|
||||
NetherBridgeFeature::NetherBridgeStart::NetherBridgeStart()
|
||||
{
|
||||
NetherBridgePieces::StartPiece *start = new NetherBridgePieces::StartPiece(random, (chunkX << 4) + 2, (chunkZ << 4) + 2, level);
|
||||
pieces.push_back(start);
|
||||
start->addChildren(start, &pieces, random);
|
||||
|
||||
vector<StructurePiece *> *pendingChildren = &start->pendingChildren;
|
||||
while (!pendingChildren->empty())
|
||||
{
|
||||
int pos = random->nextInt((int)pendingChildren->size());
|
||||
AUTO_VAR(it, pendingChildren->begin() + pos);
|
||||
StructurePiece *structurePiece = *it;
|
||||
pendingChildren->erase(it);
|
||||
structurePiece->addChildren(start, &pieces, random);
|
||||
}
|
||||
|
||||
calculateBoundingBox();
|
||||
moveInsideHeights(level, random, 48, 70);
|
||||
// for reflection
|
||||
}
|
||||
|
||||
NetherBridgeFeature::NetherBridgeStart::NetherBridgeStart(Level *level, Random *random, int chunkX, int chunkZ) : StructureStart(chunkX, chunkZ)
|
||||
{
|
||||
NetherBridgePieces::StartPiece *start = new NetherBridgePieces::StartPiece(random, (chunkX << 4) + 2, (chunkZ << 4) + 2, level);
|
||||
pieces.push_back(start);
|
||||
start->addChildren(start, &pieces, random);
|
||||
|
||||
vector<StructurePiece *> *pendingChildren = &start->pendingChildren;
|
||||
while (!pendingChildren->empty())
|
||||
{
|
||||
int pos = random->nextInt((int)pendingChildren->size());
|
||||
AUTO_VAR(it, pendingChildren->begin() + pos);
|
||||
StructurePiece *structurePiece = *it;
|
||||
pendingChildren->erase(it);
|
||||
structurePiece->addChildren(start, &pieces, random);
|
||||
}
|
||||
|
||||
calculateBoundingBox();
|
||||
moveInsideHeights(level, random, 48, 70);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user