diff --git a/Minecraft.World/OreFeature.cpp b/Minecraft.World/OreFeature.cpp index cea881aad..aa58d6489 100644 --- a/Minecraft.World/OreFeature.cpp +++ b/Minecraft.World/OreFeature.cpp @@ -3,21 +3,28 @@ #include "net.minecraft.world.level.tile.h" #include "OreFeature.h" -void OreFeature::_init(int tile, int count, int targetTile) +void OreFeature::_init(int tile, int count, int targetTile, int aux) { this->tile = tile; this->count = count; this->targetTile = targetTile; + this->aux = aux; } OreFeature::OreFeature(int tile, int count) { - _init(tile, count, Tile::stone_Id); + _init(tile, count, Tile::stone_Id, 0); } OreFeature::OreFeature(int tile, int count, int targetTile) { - _init(tile, count, targetTile); + _init(tile, count, targetTile, 0); +} + +// Nuevo constructor para permitir especificar el valor 'aux' +OreFeature::OreFeature(int tile, int count, int targetTile, int aux) +{ + _init(tile, count, targetTile, aux); } bool OreFeature::place(Level *level, Random *random, int x, int y, int z) @@ -134,7 +141,7 @@ bool OreFeature::place(Level *level, Random *random, int x, int y, int z) { if ( level->getTile(x2, y2, z2) == targetTile) { - level->setTileAndData(x2, y2, z2, tile, 0, Tile::UPDATE_INVISIBLE_NO_LIGHT); + level->setTileAndData(x2, y2, z2, tile, this->aux, Tile::UPDATE_INVISIBLE_NO_LIGHT); // Usar this->aux } } } diff --git a/Minecraft.World/OreFeature.h b/Minecraft.World/OreFeature.h index 4103f9621..185abbd43 100644 --- a/Minecraft.World/OreFeature.h +++ b/Minecraft.World/OreFeature.h @@ -9,11 +9,14 @@ private: int tile; int count; int targetTile; + int aux; - void _init(int tile, int count, int targetTile); + void _init(int tile, int count, int targetTile, int aux); public: OreFeature (int tile, int count); OreFeature(int tile, int count, int targetTile); + OreFeature(int tile, int count, int targetTile, int aux); + virtual bool place(Level *level, Random *random, int x, int y, int z); }; \ No newline at end of file