diff --git a/.gitignore b/.gitignore index 7acf7b8..686c0ee 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,6 @@ /.gradle/ /build/ /libs/ +/out/ /run/ -/gradle/wrapper/gradle-wrapper.jar /src/main/resources/mcmod.info diff --git a/.idea/.gitignore b/.idea/.gitignore index 27bd850..0c7b611 100644 --- a/.idea/.gitignore +++ b/.idea/.gitignore @@ -1,13 +1,7 @@ /* +!/runConfigurations/ !/.gitignore -!/.name -!/codeStyleSettings.xml -!/encodings.xml !/gradle.xml -!/highlighting.xml !/misc.xml !/scala_settings.xml !/vcs.xml -!/inspectionProfiles/ -!/runConfigurations/ -!/scopes/ diff --git a/changelog.md b/changelog.md index 808757c..1effe0f 100644 --- a/changelog.md +++ b/changelog.md @@ -1,4 +1,2 @@ -- TFC soil blocks falling in streams when _not_ using Repose are now washed away as items instead of simply disappearing, and no longer make a rock breaking sound. -- Gravity-fallen rock blocks can now replace Streams river blocks. This addresses a corner case where Streams, Repose and TFC would cause infinite re-spawn of lava-generated cobble. -- Fixed TFC Nether using wrong modded chunk provider. -- Removed Shader block replacement message when in server mode. +- Fixed [falling blocks bouncing endlessly when landing on blocks without a solid top](https://github.com/delvr/Streams/issues/63). +- Fixed the ["air gaps" within Streams that allowed breathing underwater](https://github.com/delvr/Streams/issues/15). diff --git a/gradle.properties b/gradle.properties index dc4e6ae..53d3207 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,4 +1,4 @@ -modVersion=0.3.3 +modVersion=0.3.4 modDependencies=farseek@[2,3) modOptionalDependencies= modDescription=This mod introduces real flowing rivers, with a true current, to your Minecraft worlds. Compatible with many terrain generators. diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..3baa851 Binary files /dev/null and b/gradle/wrapper/gradle-wrapper.jar differ diff --git a/src/main/scala/streams/block/BlockRiver.scala b/src/main/scala/streams/block/BlockRiver.scala index dc5ee21..bc4668c 100644 --- a/src/main/scala/streams/block/BlockRiver.scala +++ b/src/main/scala/streams/block/BlockRiver.scala @@ -145,8 +145,10 @@ class BlockRiver(liquid: MaterialLiquid, val dx: Int, val dz: Int) extends Block def getFilledPercentage(w: World, x: Int, y: Int, z: Int) = { implicit val world = w - val data = dataAt(x, y, z) - val decay = if(data != 0 && allNeighbors(x, y, z).exists(blockAbove(_).getMaterial == liquid)) 0f else data.toFloat - (8f - decay) / 9f + if(blockAbove(x, y, z).isLiquid) 1f else { + val data = dataAt(x, y, z) + val decay = if(data != 0 && allNeighbors(x, y, z).exists(blockAbove(_).getMaterial == liquid)) 0f else data.toFloat + (8f - decay) / 9f + } } } diff --git a/src/main/scala/streams/tfc/package.scala b/src/main/scala/streams/tfc/package.scala index 1e4e23f..84f707b 100644 --- a/src/main/scala/streams/tfc/package.scala +++ b/src/main/scala/streams/tfc/package.scala @@ -40,15 +40,11 @@ package object tfc { def isFreshWater(block: Block): Boolean = block.isInstanceOf[BlockRiver] || TFC_Core.isFreshWater(block) def canReplace(fallingBlock: EntityFallingBlockTFC, world: World, x: Int, y: Int, z: Int): Boolean = { - if(!fallingBlock.isDead) - false + if(!blockAt(x, y, z)(world).isInstanceOf[BlockRiver]) + fallingBlock.canReplace(world, x, y, z) else { - if(!blockAt(x, y, z)(world).isInstanceOf[BlockRiver]) - fallingBlock.canReplace(world, x, y, z) - else { - fallingBlock.shouldDropItem = true - false - } + fallingBlock.shouldDropItem = true + false } } }