no message (#820)

This commit is contained in:
Arcaratus 2016-06-24 17:16:26 -04:00 committed by WayofTime
parent fbfc8af8cc
commit f831c0b1e6
3 changed files with 31 additions and 21 deletions

View file

@ -74,7 +74,12 @@ public class ItemRitualDiviner extends Item implements IVariantProvider
@Override @Override
public EnumActionResult onItemUse(ItemStack stack, EntityPlayer player, World world, BlockPos pos, EnumHand hand, EnumFacing facing, float hitX, float hitY, float hitZ) public EnumActionResult onItemUse(ItemStack stack, EntityPlayer player, World world, BlockPos pos, EnumHand hand, EnumFacing facing, float hitX, float hitY, float hitZ)
{ {
if (trySetDisplayedRitual(stack, world, pos) && addRuneToRitual(stack, world, pos, player)) if (player.isSneaking())
{
trySetDisplayedRitual(stack, world, pos);
return EnumActionResult.SUCCESS;
}
else if (addRuneToRitual(stack, world, pos, player))
{ {
if (world.isRemote) if (world.isRemote)
{ {
@ -90,7 +95,7 @@ public class ItemRitualDiviner extends Item implements IVariantProvider
/** /**
* Adds a single rune to the ritual. * Adds a single rune to the ritual.
* *
* @param stack * @param stack
* - The Ritual Diviner stack * - The Ritual Diviner stack
* @param world * @param world
@ -99,7 +104,7 @@ public class ItemRitualDiviner extends Item implements IVariantProvider
* - Block Position of the MRS. * - Block Position of the MRS.
* @param player * @param player
* - The Player attempting to place the ritual * - The Player attempting to place the ritual
* *
* @return - True if a rune was successfully added * @return - True if a rune was successfully added
*/ */
public boolean addRuneToRitual(ItemStack stack, World world, BlockPos pos, EntityPlayer player) public boolean addRuneToRitual(ItemStack stack, World world, BlockPos pos, EntityPlayer player)
@ -126,7 +131,7 @@ public class ItemRitualDiviner extends Item implements IVariantProvider
{ {
if (RitualHelper.isRuneType(world, newPos, component.getRuneType())) if (RitualHelper.isRuneType(world, newPos, component.getRuneType()))
{ {
continue; undisplayHologram();
} else } else
{ {
// Replace existing ritual stone // Replace existing ritual stone
@ -155,7 +160,8 @@ public class ItemRitualDiviner extends Item implements IVariantProvider
return false; return false;
} }
public boolean trySetDisplayedRitual(ItemStack itemStack, World world, BlockPos pos) @SideOnly(Side.CLIENT)
public void trySetDisplayedRitual(ItemStack itemStack, World world, BlockPos pos)
{ {
TileEntity tile = world.getTileEntity(pos); TileEntity tile = world.getTileEntity(pos);
@ -167,11 +173,15 @@ public class ItemRitualDiviner extends Item implements IVariantProvider
if (ritual != null) if (ritual != null)
{ {
EnumFacing direction = getDirection(itemStack); EnumFacing direction = getDirection(itemStack);
return ClientHandler.setRitualHolo(masterRitualStone, ritual, direction, true); ClientHandler.setRitualHolo(masterRitualStone, ritual, direction, true);
} }
} }
}
return true; @SideOnly(Side.CLIENT)
public void undisplayHologram()
{
ClientHandler.setRitualHoloToNull();
} }
// TODO: Make this work for any IRitualStone // TODO: Make this work for any IRitualStone

View file

@ -3,7 +3,6 @@ package WayofTime.bloodmagic.tile;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import WayofTime.bloodmagic.util.handler.event.ClientHandler;
import lombok.Getter; import lombok.Getter;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
import lombok.Setter; import lombok.Setter;
@ -132,7 +131,6 @@ public class TileMasterRitualStone extends TileEntity implements IMasterRitualSt
String crystalOwner = activationCrystal.getTagCompound().getString(Constants.NBT.OWNER_UUID); String crystalOwner = activationCrystal.getTagCompound().getString(Constants.NBT.OWNER_UUID);
// crystalOwner = PlayerHelper.getUUIDFromPlayer(activator).toString(); //Temporary patch job // crystalOwner = PlayerHelper.getUUIDFromPlayer(activator).toString(); //Temporary patch job
ClientHandler.setRitualHolo(null, null, EnumFacing.NORTH, false);
if (!Strings.isNullOrEmpty(crystalOwner) && ritual != null) if (!Strings.isNullOrEmpty(crystalOwner) && ritual != null)
{ {
if (activationCrystal.getItem() instanceof ItemActivationCrystal) if (activationCrystal.getItem() instanceof ItemActivationCrystal)

View file

@ -137,10 +137,10 @@ public class ClientHandler
if (mrsHoloDisplay) if (mrsHoloDisplay)
renderRitualStones(mrsHoloTile, event.getPartialTicks()); renderRitualStones(mrsHoloTile, event.getPartialTicks());
else else
ClientHandler.setRitualHolo(null, null, EnumFacing.NORTH, false); ClientHandler.setRitualHoloToNull();
} else } else
{ {
ClientHandler.setRitualHolo(null, null, EnumFacing.NORTH, false); ClientHandler.setRitualHoloToNull();
} }
} }
@ -149,7 +149,7 @@ public class ClientHandler
TileEntity tileEntity = world.getTileEntity(minecraft.objectMouseOver.getBlockPos()); TileEntity tileEntity = world.getTileEntity(minecraft.objectMouseOver.getBlockPos());
if (tileEntity instanceof TileMasterRitualStone && player.getHeldItemMainhand() != null && player.getHeldItemMainhand().getItem() instanceof ItemRitualDiviner && !mrsHoloDisplay) if (tileEntity instanceof TileMasterRitualStone && player.getHeldItemMainhand() != null && player.getHeldItemMainhand().getItem() instanceof ItemRitualDiviner)
renderRitualStones(player, event.getPartialTicks()); renderRitualStones(player, event.getPartialTicks());
if (tileEntity instanceof TileMasterRitualStone && player.getHeldItemMainhand() != null && player.getHeldItemMainhand().getItem() instanceof ItemRitualReader) if (tileEntity instanceof TileMasterRitualStone && player.getHeldItemMainhand() != null && player.getHeldItemMainhand().getItem() instanceof ItemRitualReader)
@ -364,18 +364,20 @@ public class ClientHandler
GlStateManager.popMatrix(); GlStateManager.popMatrix();
} }
public static boolean setRitualHolo(TileMasterRitualStone masterRitualStone, Ritual ritual, EnumFacing direction, boolean displayed) public static void setRitualHolo(TileMasterRitualStone masterRitualStone, Ritual ritual, EnumFacing direction, boolean displayed)
{ {
mrsHoloDisplay = displayed; mrsHoloDisplay = displayed;
if (mrsHoloTile != masterRitualStone || mrsHoloRitual != ritual || mrsHoloDirection != direction) mrsHoloTile = masterRitualStone;
{ mrsHoloRitual = ritual;
mrsHoloTile = masterRitualStone; mrsHoloDirection = direction;
mrsHoloRitual = ritual; }
mrsHoloDirection = direction;
return false;
}
return true; public static void setRitualHoloToNull()
{
mrsHoloDisplay = false;
mrsHoloTile = null;
mrsHoloRitual = null;
mrsHoloDirection = EnumFacing.NORTH;
} }
protected void renderHotbarItem(int x, int y, float partialTicks, EntityPlayer player, @Nullable ItemStack stack) protected void renderHotbarItem(int x, int y, float partialTicks, EntityPlayer player, @Nullable ItemStack stack)