Permalink
Comparing changes
Open a pull request
- 2 commits
- 5 files changed
- 0 commit comments
- 1 contributor
Unified
Split
Showing
with
34 additions
and 47 deletions.
- +1 −1 src/BlockInfo.cpp
- +1 −1 src/Blocks/ChunkInterface.cpp
- +22 −38 src/Generating/BioGen.cpp
- +9 −6 src/Generating/BioGen.h
- +1 −1 src/Mobs/Monster.h
| @@ -734,7 +734,7 @@ void cBlockInfo::Initialize(cBlockInfoArray & a_Info) | ||
| a_Info[E_BLOCK_NEW_LOG ].m_PlaceSound = "dig.wood"; | ||
| a_Info[E_BLOCK_ACACIA_WOOD_STAIRS ].m_PlaceSound = "dig.wood"; | ||
| a_Info[E_BLOCK_DARK_OAK_WOOD_STAIRS ].m_PlaceSound = "dig.wood"; | ||
| a_Info[E_BLOCK_SLIME_BLOCK ].m_PlaceSound = "dig.slime"; // I hope it is named slime, it's definetly a new sound type though... | ||
| a_Info[E_BLOCK_SLIME_BLOCK ].m_PlaceSound = "dig.slime"; // TODO: Check that this is the correct name | ||
| a_Info[E_BLOCK_BARRIER ].m_PlaceSound = "dig.stone"; | ||
| a_Info[E_BLOCK_IRON_TRAPDOOR ].m_PlaceSound = "dig.metal"; | ||
| a_Info[E_BLOCK_PRISMARINE_BLOCK ].m_PlaceSound = "dig.stone"; | ||
| @@ -4,7 +4,7 @@ | ||
| #include "ChunkInterface.h" | ||
| #include "ChunkMap.h" | ||
| #include "BlockHandler.h" | ||
| #include "WorldInterface.h" | ||
| #include "WorldInterface.h" | ||
| @@ -737,8 +737,6 @@ void cBioGenMultiStepMap::FreezeWaterBiomes(cChunkDef::BiomeMap & a_BiomeMap, co | ||
| cBioGenTwoLevel::cBioGenTwoLevel(int a_Seed) : | ||
| m_VoronoiLarge(a_Seed + 1000), | ||
| m_VoronoiSmall(a_Seed + 2000), | ||
| m_DistortX(a_Seed + 3000), | ||
| m_DistortZ(a_Seed + 4000), | ||
| m_Noise1(a_Seed + 5001), | ||
| m_Noise2(a_Seed + 5002), | ||
| m_Noise3(a_Seed + 5003), | ||
| @@ -762,19 +760,17 @@ void cBioGenTwoLevel::GenBiomes(int a_ChunkX, int a_ChunkZ, cChunkDef::BiomeMap | ||
| int DistortZ[cChunkDef::Width + 1][cChunkDef::Width + 1]; | ||
| for (int x = 0; x <= 4; x++) for (int z = 0; z <= 4; z++) | ||
| { | ||
| int BlockX = BaseX + x * 4; | ||
| int BlockZ = BaseZ + z * 4; | ||
| float BlockXF = (float)(16 * BlockX) / 128; | ||
| float BlockZF = (float)(16 * BlockZ) / 128; | ||
| double NoiseX = m_Noise1.CubicNoise2D(BlockXF / 16, BlockZF / 16); | ||
| NoiseX += 0.5 * m_Noise2.CubicNoise2D(BlockXF / 8, BlockZF / 8); | ||
| NoiseX += 0.08 * m_Noise3.CubicNoise2D(BlockXF, BlockZF); | ||
| double NoiseZ = m_Noise4.CubicNoise2D(BlockXF / 16, BlockZF / 16); | ||
| NoiseZ += 0.5 * m_Noise5.CubicNoise2D(BlockXF / 8, BlockZF / 8); | ||
| NoiseZ += 0.08 * m_Noise6.CubicNoise2D(BlockXF, BlockZF); | ||
| float BlockX = BaseX + x * 4; | ||
| float BlockZ = BaseZ + z * 4; | ||
| double NoiseX = m_AmpX1 * m_Noise1.CubicNoise2D(BlockX * m_FreqX1, BlockZ * m_FreqX1); | ||
| NoiseX += m_AmpX2 * m_Noise2.CubicNoise2D(BlockX * m_FreqX2, BlockZ * m_FreqX2); | ||
| NoiseX += m_AmpX3 * m_Noise3.CubicNoise2D(BlockX * m_FreqX3, BlockZ * m_FreqX3); | ||
| double NoiseZ = m_AmpZ1 * m_Noise4.CubicNoise2D(BlockX * m_FreqZ1, BlockZ * m_FreqZ1); | ||
| NoiseZ += m_AmpZ2 * m_Noise5.CubicNoise2D(BlockX * m_FreqZ2, BlockZ * m_FreqZ2); | ||
| NoiseZ += m_AmpZ3 * m_Noise6.CubicNoise2D(BlockX * m_FreqZ3, BlockZ * m_FreqZ3); | ||
| DistortX[4 * x][4 * z] = BlockX + (int)(64 * NoiseX); | ||
| DistortZ[4 * x][4 * z] = BlockZ + (int)(64 * NoiseZ); | ||
| DistortX[4 * x][4 * z] = (int)(BlockX + NoiseX); | ||
| DistortZ[4 * x][4 * z] = (int)(BlockZ + NoiseZ); | ||
| } | ||
| LinearUpscale2DArrayInPlace<cChunkDef::Width + 1, cChunkDef::Width + 1, 4, 4>(&DistortX[0][0]); | ||
| @@ -915,30 +911,18 @@ void cBioGenTwoLevel::InitializeBiomeGen(cIniFile & a_IniFile) | ||
| { | ||
| m_VoronoiLarge.SetCellSize(a_IniFile.GetValueSetI("Generator", "TwoLevelLargeCellSize", 1024)); | ||
| m_VoronoiSmall.SetCellSize(a_IniFile.GetValueSetI("Generator", "TwoLevelSmallCellSize", 128)); | ||
| m_DistortX.AddOctave( | ||
| (float)a_IniFile.GetValueSetF("Generator", "TwoLevelDistortXOctave1Freq", 0.01), | ||
| (float)a_IniFile.GetValueSetF("Generator", "TwoLevelDistortXOctave1Amp", 16) | ||
| ); | ||
| m_DistortX.AddOctave( | ||
| (float)a_IniFile.GetValueSetF("Generator", "TwoLevelDistortXOctave2Freq", 0.005), | ||
| (float)a_IniFile.GetValueSetF("Generator", "TwoLevelDistortXOctave2Amp", 8) | ||
| ); | ||
| m_DistortX.AddOctave( | ||
| (float)a_IniFile.GetValueSetF("Generator", "TwoLevelDistortXOctave3Freq", 0.0025), | ||
| (float)a_IniFile.GetValueSetF("Generator", "TwoLevelDistortXOctave3Amp", 4) | ||
| ); | ||
| m_DistortZ.AddOctave( | ||
| (float)a_IniFile.GetValueSetF("Generator", "TwoLevelDistortZOctave1Freq", 0.01), | ||
| (float)a_IniFile.GetValueSetF("Generator", "TwoLevelDistortZOctave1Amp", 16) | ||
| ); | ||
| m_DistortZ.AddOctave( | ||
| (float)a_IniFile.GetValueSetF("Generator", "TwoLevelDistortZOctave2Freq", 0.005), | ||
| (float)a_IniFile.GetValueSetF("Generator", "TwoLevelDistortZOctave2Amp", 8) | ||
| ); | ||
| m_DistortZ.AddOctave( | ||
| (float)a_IniFile.GetValueSetF("Generator", "TwoLevelDistortZOctave3Freq", 0.0025), | ||
| (float)a_IniFile.GetValueSetF("Generator", "TwoLevelDistortZOctave3Amp", 4) | ||
| ); | ||
| m_FreqX1 = (float)a_IniFile.GetValueSetF("Generator", "TwoLevelDistortXOctave1Freq", 0.01); | ||
| m_AmpX1 = (float)a_IniFile.GetValueSetF("Generator", "TwoLevelDistortXOctave1Amp", 80); | ||
| m_FreqX2 = (float)a_IniFile.GetValueSetF("Generator", "TwoLevelDistortXOctave2Freq", 0.05); | ||
| m_AmpX2 = (float)a_IniFile.GetValueSetF("Generator", "TwoLevelDistortXOctave2Amp", 20); | ||
| m_FreqX3 = (float)a_IniFile.GetValueSetF("Generator", "TwoLevelDistortXOctave3Freq", 0.1), | ||
| m_AmpX3 = (float)a_IniFile.GetValueSetF("Generator", "TwoLevelDistortXOctave3Amp", 8); | ||
| m_FreqZ1 = (float)a_IniFile.GetValueSetF("Generator", "TwoLevelDistortZOctave1Freq", 0.01); | ||
| m_AmpZ1 = (float)a_IniFile.GetValueSetF("Generator", "TwoLevelDistortZOctave1Amp", 80); | ||
| m_FreqZ2 = (float)a_IniFile.GetValueSetF("Generator", "TwoLevelDistortZOctave2Freq", 0.05); | ||
| m_AmpZ2 = (float)a_IniFile.GetValueSetF("Generator", "TwoLevelDistortZOctave2Amp", 20); | ||
| m_FreqZ3 = (float)a_IniFile.GetValueSetF("Generator", "TwoLevelDistortZOctave3Freq", 0.1); | ||
| m_AmpZ3 = (float)a_IniFile.GetValueSetF("Generator", "TwoLevelDistortZOctave3Amp", 8); | ||
| } | ||
| @@ -285,19 +285,22 @@ class cBioGenTwoLevel : | ||
| /// The Voronoi map that decides biomes inside individual biome groups | ||
| cVoronoiMap m_VoronoiSmall; | ||
| /// The noise used to distort the input X coord | ||
| cPerlinNoise m_DistortX; | ||
| /// The noise used to distort the inupt Z coord | ||
| cPerlinNoise m_DistortZ; | ||
| // The noises used for the distortion: | ||
| cNoise m_Noise1; | ||
| cNoise m_Noise2; | ||
| cNoise m_Noise3; | ||
| cNoise m_Noise4; | ||
| cNoise m_Noise5; | ||
| cNoise m_Noise6; | ||
| // Frequencies and amplitudes for the distortion noises: | ||
| float m_FreqX1, m_AmpX1; | ||
| float m_FreqX2, m_AmpX2; | ||
| float m_FreqX3, m_AmpX3; | ||
| float m_FreqZ1, m_AmpZ1; | ||
| float m_FreqZ2, m_AmpZ2; | ||
| float m_FreqZ3, m_AmpZ3; | ||
| // cBiomeGen overrides: | ||
| virtual void GenBiomes(int a_ChunkX, int a_ChunkZ, cChunkDef::BiomeMap & a_BiomeMap) override; | ||
| @@ -25,7 +25,7 @@ class cMonster : | ||
| typedef cPawn super; | ||
| public: | ||
| //Depreciated | ||
| // Deprecated | ||
| typedef eMonsterType eType; | ||
| enum eFamily | ||