Re-added overpowered magic healing water that obviously no one liked at all

This commit is contained in:
Forstride 2016-01-29 05:28:02 -05:00
parent 87cbc0ae6e
commit 4637c01a3a
16 changed files with 181 additions and 7 deletions

View File

@ -145,4 +145,6 @@ public class BOPBlocks
public static Fluid blood_fluid;
public static Block poison;
public static Fluid poison_fluid;
public static Block hot_spring_water;
public static Fluid hot_spring_water_fluid;
}

View File

@ -114,6 +114,7 @@ public class BOPItems
public static Item honey_bucket;
public static Item blood_bucket;
public static Item poison_bucket;
public static Item hot_spring_water_bucket;
public static Item record_wanderer;
public static Item record_corruption;

View File

@ -8,11 +8,14 @@
package biomesoplenty.common.biome.overworld;
import net.minecraft.block.state.IBlockState;
import net.minecraft.init.Blocks;
import biomesoplenty.api.biome.BOPBiome;
import biomesoplenty.api.biome.generation.GeneratorStage;
import biomesoplenty.api.block.BOPBlocks;
import biomesoplenty.common.enums.BOPClimates;
import biomesoplenty.common.world.BOPWorldSettings;
import biomesoplenty.common.world.feature.GeneratorLakes;
import biomesoplenty.common.world.feature.GeneratorOreSingle;
public class BiomeGenAlps extends BOPBiome
@ -39,6 +42,9 @@ public class BiomeGenAlps extends BOPBiome
this.spawnableCreatureList.clear();
// hot springs
this.addGenerator("hot_springs", GeneratorStage.SAND, (new GeneratorLakes.Builder()).amountPerChunk(0.1F).waterLakeForBiome(this).liquid(BOPBlocks.hot_spring_water).frozenLiquid((IBlockState)null).create());
// gem
this.addGenerator("emeralds", GeneratorStage.SAND, (new GeneratorOreSingle.Builder()).amountPerChunk(12).with(Blocks.emerald_ore.getDefaultState()).create());

View File

@ -0,0 +1,24 @@
/*******************************************************************************
* Copyright 2014-2016, the Biomes O' Plenty Team
*
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
*
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
******************************************************************************/
package biomesoplenty.common.fluids;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.fluids.Fluid;
public class HotSpringWaterFluid extends Fluid {
public static final String name = "hot_spring_water";
public static final HotSpringWaterFluid instance = new HotSpringWaterFluid();
public HotSpringWaterFluid()
{
super(name, new ResourceLocation("biomesoplenty:blocks/hot_spring_water_still"), new ResourceLocation("biomesoplenty:blocks/hot_spring_water_flowing"));
}
}

View File

@ -0,0 +1,56 @@
/*******************************************************************************
* Copyright 2014-2016, the Biomes O' Plenty Team
*
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
*
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
******************************************************************************/
package biomesoplenty.common.fluids.blocks;
import java.util.Random;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.block.state.IBlockState;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.potion.Potion;
import net.minecraft.potion.PotionEffect;
import net.minecraft.util.BlockPos;
import net.minecraft.util.EnumParticleTypes;
import net.minecraft.world.World;
import net.minecraftforge.fluids.BlockFluidClassic;
import net.minecraftforge.fluids.Fluid;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
public class BlockHotSpringWaterFluid extends BlockFluidClassic
{
public BlockHotSpringWaterFluid(Fluid fluid)
{
super(fluid, Material.water);
}
@Override
public void onEntityCollidedWithBlock(World world, BlockPos pos, Entity entity)
{
if (entity instanceof EntityLivingBase)
{
((EntityLivingBase)entity).addPotionEffect(new PotionEffect(Potion.regeneration.id, 100));
}
}
@Override
@SideOnly(Side.CLIENT)
public void randomDisplayTick(World worldIn, BlockPos pos, IBlockState state, Random rand) {
super.randomDisplayTick(worldIn, pos, state, rand);
if (rand.nextInt(20)==0)
{
worldIn.spawnParticle(EnumParticleTypes.CLOUD, pos.getX() + rand.nextFloat(), pos.getY() + 1.0F, pos.getZ() + rand.nextFloat(), 0.0D, 0.0D, 0.0D, new int[0]);
}
}
}

View File

@ -22,6 +22,7 @@ import biomesoplenty.api.block.BOPBlocks;
import biomesoplenty.api.item.BOPItems;
import biomesoplenty.common.fluids.blocks.BlockBloodFluid;
import biomesoplenty.common.fluids.blocks.BlockHoneyFluid;
import biomesoplenty.common.fluids.blocks.BlockHotSpringWaterFluid;
import biomesoplenty.common.fluids.blocks.BlockPoisonFluid;
public class BucketEventHandler
@ -52,6 +53,10 @@ public class BucketEventHandler
{
filled_bucket = BOPItems.poison_bucket;
}
else if (iblockstate.getBlock() == BOPBlocks.hot_spring_water && ((Integer)iblockstate.getValue(BlockHotSpringWaterFluid.LEVEL)).intValue() == 0)
{
filled_bucket = Items.water_bucket;
}
else
{
return;

View File

@ -12,6 +12,7 @@ import static biomesoplenty.api.block.BOPBlocks.*;
import static biomesoplenty.api.item.BOPItems.blood_bucket;
import static biomesoplenty.api.item.BOPItems.honey_bucket;
import static biomesoplenty.api.item.BOPItems.poison_bucket;
import static biomesoplenty.api.item.BOPItems.hot_spring_water_bucket;
import net.minecraft.block.Block;
import net.minecraft.block.BlockSlab;
import net.minecraft.block.BlockStairs;
@ -28,17 +29,59 @@ import net.minecraftforge.common.EnumPlantType;
import net.minecraftforge.fluids.BlockFluidBase;
import net.minecraftforge.fluids.Fluid;
import net.minecraftforge.fluids.FluidRegistry;
import net.minecraftforge.fml.common.registry.GameData;
import net.minecraftforge.fml.common.registry.GameRegistry;
import biomesoplenty.api.block.IBOPBlock;
import biomesoplenty.api.item.BOPItems;
import biomesoplenty.common.block.*;
import biomesoplenty.common.block.BlockBOPAsh;
import biomesoplenty.common.block.BlockBOPBamboo;
import biomesoplenty.common.block.BlockBOPBiomeBlock;
import biomesoplenty.common.block.BlockBOPBones;
import biomesoplenty.common.block.BlockBOPCoral;
import biomesoplenty.common.block.BlockBOPCrystal;
import biomesoplenty.common.block.BlockBOPDirt;
import biomesoplenty.common.block.BlockBOPDoor;
import biomesoplenty.common.block.BlockBOPDoubleOtherSlab;
import biomesoplenty.common.block.BlockBOPDoublePlant;
import biomesoplenty.common.block.BlockBOPDoubleWoodSlab;
import biomesoplenty.common.block.BlockBOPFence;
import biomesoplenty.common.block.BlockBOPFenceGate;
import biomesoplenty.common.block.BlockBOPFlesh;
import biomesoplenty.common.block.BlockBOPFlower;
import biomesoplenty.common.block.BlockBOPFruit;
import biomesoplenty.common.block.BlockBOPGem;
import biomesoplenty.common.block.BlockBOPGemOre;
import biomesoplenty.common.block.BlockBOPGeneric;
import biomesoplenty.common.block.BlockBOPGrass;
import biomesoplenty.common.block.BlockBOPHalfOtherSlab;
import biomesoplenty.common.block.BlockBOPHalfWoodSlab;
import biomesoplenty.common.block.BlockBOPHive;
import biomesoplenty.common.block.BlockBOPHoney;
import biomesoplenty.common.block.BlockBOPLeaves;
import biomesoplenty.common.block.BlockBOPLilypad;
import biomesoplenty.common.block.BlockBOPLog;
import biomesoplenty.common.block.BlockBOPMud;
import biomesoplenty.common.block.BlockBOPMushroom;
import biomesoplenty.common.block.BlockBOPPlanks;
import biomesoplenty.common.block.BlockBOPPlant;
import biomesoplenty.common.block.BlockBOPSand;
import biomesoplenty.common.block.BlockBOPSapling;
import biomesoplenty.common.block.BlockBOPSeaweed;
import biomesoplenty.common.block.BlockBOPStone;
import biomesoplenty.common.block.BlockBOPStoneFormations;
import biomesoplenty.common.block.BlockBOPTerrarium;
import biomesoplenty.common.block.BlockBOPTurnip;
import biomesoplenty.common.block.BlockBOPVine;
import biomesoplenty.common.block.BlockBOPWoodStairs;
import biomesoplenty.common.command.BOPCommand;
import biomesoplenty.common.enums.*;
import biomesoplenty.common.enums.BOPWoods;
import biomesoplenty.common.fluids.BloodFluid;
import biomesoplenty.common.fluids.HoneyFluid;
import biomesoplenty.common.fluids.HotSpringWaterFluid;
import biomesoplenty.common.fluids.PoisonFluid;
import biomesoplenty.common.fluids.blocks.*;
import biomesoplenty.common.fluids.blocks.BlockBloodFluid;
import biomesoplenty.common.fluids.blocks.BlockHoneyFluid;
import biomesoplenty.common.fluids.blocks.BlockHotSpringWaterFluid;
import biomesoplenty.common.fluids.blocks.BlockPoisonFluid;
import biomesoplenty.common.util.BOPReflectionHelper;
import biomesoplenty.common.util.block.BlockStateUtils;
import biomesoplenty.common.util.inventory.CreativeTabBOP;
@ -238,10 +281,14 @@ public class ModBlocks
FluidRegistry.registerFluid(poison_fluid);
poison = registerFluidBlock(poison_fluid, new BlockPoisonFluid(poison_fluid), "poison");
hot_spring_water_fluid = HotSpringWaterFluid.instance;
FluidRegistry.registerFluid(hot_spring_water_fluid);
hot_spring_water = registerFluidBlock(hot_spring_water_fluid, new BlockHotSpringWaterFluid(hot_spring_water_fluid), "hot_spring_water");
honey_bucket = ModItems.registerItem((new ItemBucket(honey)).setContainerItem(Items.bucket), "honey_bucket");
blood_bucket = ModItems.registerItem((new ItemBucket(blood)).setContainerItem(Items.bucket), "blood_bucket");
poison_bucket = ModItems.registerItem((new ItemBucket(poison)).setContainerItem(Items.bucket), "poison_bucket");
hot_spring_water_bucket = ModItems.registerItem((new ItemBucket(hot_spring_water)).setContainerItem(Items.bucket), "hot_spring_water_bucket");
}

View File

@ -47,7 +47,7 @@ public class GenLayerRiverMixBOP extends BOPGenLayer
{
if (riverValues[i] == BiomeGenBase.river.biomeID)
{
if (biomeIds[i] == BiomeGenBase.icePlains.biomeID || (BOPBiomes.cold_desert.isPresent() && biomeIds[i] == BOPBiomes.cold_desert.get().biomeID) || (BOPBiomes.frozen_desert.isPresent() && biomeIds[i] == BOPBiomes.frozen_desert.get().biomeID))
if (biomeIds[i] == BiomeGenBase.icePlains.biomeID || (BOPBiomes.frozen_desert.isPresent() && biomeIds[i] == BOPBiomes.frozen_desert.get().biomeID) || (BOPBiomes.frost_forest.isPresent() && biomeIds[i] == BOPBiomes.frost_forest.get().biomeID) || (BOPBiomes.alps.isPresent() && biomeIds[i] == BOPBiomes.alps.get().biomeID))
{
out[i] = BiomeGenBase.frozenRiver.biomeID;
}

View File

@ -12,6 +12,10 @@
"poison": {
"model": "forge:fluid",
"custom": { "fluid": "poison" }
}
},
"hot_spring_water": {
"model": "forge:fluid",
"custom": { "fluid": "hot_spring_water" }
}
}
}

View File

@ -118,6 +118,7 @@ item.gold_scythe.name=Golden Scythe
item.hellbark_door.name=Hellbark Door
item.honey_bucket.name=Honey Bucket
item.honeycomb.name=Empty Honeycomb
item.hot_spring_water_bucket.name=Hot Spring Water Bucket
item.ichor.name=Ichor
item.iron_scythe.name=Iron Scythe
item.jacaranda_door.name=Jacaranda Door

View File

@ -0,0 +1,18 @@
{
"parent": "builtin/generated",
"textures": {
"layer0": "biomesoplenty:items/hot_spring_water_bucket"
},
"display": {
"thirdperson": {
"rotation": [ -90, 0, 0 ],
"translation": [ 0, 1, -3 ],
"scale": [ 0.55, 0.55, 0.55 ]
},
"firstperson": {
"rotation": [ 0, -135, 25 ],
"translation": [ 0, 4, 2 ],
"scale": [ 1.7, 1.7, 1.7 ]
}
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.5 KiB

View File

@ -0,0 +1,5 @@
{
"animation": {
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.1 KiB

View File

@ -0,0 +1,5 @@
{
"animation": {
"frametime": 2
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 336 B