New AreaDescriptor tryout

This commit is contained in:
Arcaratus 2015-12-30 20:22:39 -05:00
parent 1d42ef50c3
commit 2966f93260
5 changed files with 22 additions and 34 deletions

View file

@ -26,7 +26,6 @@ import java.util.List;
public class ItemAltarMaker extends Item implements IAltarManipulator
{
private EnumAltarTier tierToBuild = EnumAltarTier.ONE;
public ItemAltarMaker()
@ -72,7 +71,6 @@ public class ItemAltarMaker extends Item implements IAltarManipulator
if (mop.typeOfHit == MovingObjectPosition.MovingObjectType.BLOCK && world.getBlockState(mop.getBlockPos()).getBlock() instanceof BlockAltar)
{
ChatUtil.sendNoSpam(player, TextHelper.localizeEffect("chat.BloodMagic.altarMaker.building", tierToBuild));
buildAltar(world, mop.getBlockPos());
@ -89,7 +87,6 @@ public class ItemAltarMaker extends Item implements IAltarManipulator
public void buildAltar(World world, BlockPos pos)
{
if (world.isRemote)
return;

View file

@ -20,7 +20,6 @@ import WayofTime.bloodmagic.api.util.helper.NetworkHelper;
public class RitualGreenGrove extends Ritual
{
public static final String GROW_RANGE = "growing";
public RitualGreenGrove()

View file

@ -2,23 +2,22 @@ package WayofTime.bloodmagic.ritual;
import java.util.ArrayList;
import WayofTime.bloodmagic.api.ritual.*;
import net.minecraft.init.Blocks;
import net.minecraft.util.BlockPos;
import net.minecraft.world.World;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.api.network.SoulNetwork;
import WayofTime.bloodmagic.api.ritual.EnumRuneType;
import WayofTime.bloodmagic.api.ritual.IMasterRitualStone;
import WayofTime.bloodmagic.api.ritual.Ritual;
import WayofTime.bloodmagic.api.ritual.RitualComponent;
import WayofTime.bloodmagic.api.util.helper.NetworkHelper;
public class RitualLava extends Ritual
{
public static final String LAVA_RANGE = "lavaRange";
public RitualLava()
{
super("ritualLava", 0, 10000, "ritual." + Constants.Mod.MODID + ".lavaRitual");
addBlockRange(LAVA_RANGE, new AreaDescriptor.Rectangle(new BlockPos(0, 1, 0), new BlockPos(0, 1, 0)));
}
@Override
@ -31,11 +30,15 @@ public class RitualLava extends Ritual
if (currentEssence < getRefreshCost())
return;
BlockPos pos = masterRitualStone.getPos().up();
if (world.isAirBlock(pos))
AreaDescriptor lavaRange = getBlockRange(LAVA_RANGE);
for (BlockPos newPos : lavaRange.getContainedPositions(masterRitualStone.getPos()))
{
world.setBlockState(pos, Blocks.lava.getDefaultState());
network.syphon(getRefreshCost());
if (world.isAirBlock(newPos))
{
world.setBlockState(newPos, Blocks.lava.getDefaultState());
network.syphon(getRefreshCost());
}
}
}

View file

@ -2,23 +2,22 @@ package WayofTime.bloodmagic.ritual;
import java.util.ArrayList;
import WayofTime.bloodmagic.api.ritual.*;
import net.minecraft.init.Blocks;
import net.minecraft.util.BlockPos;
import net.minecraft.world.World;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.api.network.SoulNetwork;
import WayofTime.bloodmagic.api.ritual.EnumRuneType;
import WayofTime.bloodmagic.api.ritual.IMasterRitualStone;
import WayofTime.bloodmagic.api.ritual.Ritual;
import WayofTime.bloodmagic.api.ritual.RitualComponent;
import WayofTime.bloodmagic.api.util.helper.NetworkHelper;
public class RitualWater extends Ritual
{
public static final String WATER_RANGE = "waterRange";
public RitualWater()
{
super("ritualWater", 0, 500, "ritual." + Constants.Mod.MODID + ".waterRitual");
addBlockRange(WATER_RANGE, new AreaDescriptor.Rectangle(new BlockPos(0, 1, 0), new BlockPos(0, 1, 0)));
}
@Override
@ -31,11 +30,15 @@ public class RitualWater extends Ritual
if (currentEssence < getRefreshCost())
return;
BlockPos pos = masterRitualStone.getPos().up();
if (world.isAirBlock(pos))
AreaDescriptor lavaRange = getBlockRange(WATER_RANGE);
for (BlockPos newPos : lavaRange.getContainedPositions(masterRitualStone.getPos()))
{
world.setBlockState(pos, Blocks.water.getDefaultState());
network.syphon(getRefreshCost());
if (world.isAirBlock(newPos))
{
world.setBlockState(newPos, Blocks.water.getDefaultState());
network.syphon(getRefreshCost());
}
}
}

View file

@ -23,11 +23,9 @@ import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
public class EventHandler
{
@SubscribeEvent
public void onEntityDeath(LivingHurtEvent event)
{
int chestIndex = 2;
if (event.source.getEntity() instanceof EntityPlayer && !PlayerHelper.isFakePlayer((EntityPlayer) event.source.getEntity()))
@ -79,16 +77,4 @@ public class EventHandler
ChatUtil.sendNoSpam(event.entityPlayer, TextHelper.localizeEffect("chat.BloodMagic.altarMaker.destroy", altarMaker.destroyAltar(event.entityPlayer)));
}
}
@SubscribeEvent
public void onBlockBreak(BlockEvent.BreakEvent event)
{
if (!event.world.isRemote && event.getPlayer() != null)
{
if (event.getPlayer().capabilities.isCreativeMode && event.getPlayer().getCurrentEquippedItem() != null && event.getPlayer().getCurrentEquippedItem().getItem() instanceof ItemBoundSword)
{
event.setCanceled(true);
}
}
}
}