diff options
| author | OnyxDarkKnight <sor1n.iliutza16@gmail.com> | 2015-04-12 16:29:24 +0300 |
|---|---|---|
| committer | OnyxDarkKnight <sor1n.iliutza16@gmail.com> | 2015-04-12 16:29:24 +0300 |
| commit | 4f29b0ed24e393be7074abd851e207aadab38196 (patch) | |
| tree | be8e5211a2956589c08b5e88b5e083e6aaeb96ce /src/main/java/darkknight/jewelrycraft/tileentity | |
| parent | 6312636fd9a4d0f56dc7c9ff474a99d879bcb4e9 (diff) | |
I rearranged files and added a few cool stuff.
Diffstat (limited to 'src/main/java/darkknight/jewelrycraft/tileentity')
8 files changed, 34 insertions, 116 deletions
diff --git a/src/main/java/darkknight/jewelrycraft/tileentity/TileEntityShadowEye.java b/src/main/java/darkknight/jewelrycraft/tileentity/TileEntityShadowEye.java index e02cac2..c6e9da5 100644 --- a/src/main/java/darkknight/jewelrycraft/tileentity/TileEntityShadowEye.java +++ b/src/main/java/darkknight/jewelrycraft/tileentity/TileEntityShadowEye.java @@ -16,18 +16,18 @@ import darkknight.jewelrycraft.block.BlockHandPedestal; import darkknight.jewelrycraft.block.BlockList; import darkknight.jewelrycraft.particles.EntityShadowsFX; import darkknight.jewelrycraft.util.JewelryNBT; +import darkknight.jewelrycraft.util.JewelrycraftUtil; import darkknight.jewelrycraft.util.PlayerUtils; +import darkknight.jewelrycraft.util.Variables; public class TileEntityShadowEye extends TileEntity { public int opening, timer, t = 20; - public boolean active; + public boolean active, shouldAddData; public ArrayList<ItemStack> pedestalItems = new ArrayList<ItemStack>(); - ResourceLocation particleTexture = new ResourceLocation("jewelrycraft", "textures/particle/shadows.png"); + ResourceLocation particleTexture = new ResourceLocation(Variables.MODID, "textures/particle/shadows.png"); + public EntityPlayer target; - /** - * - */ public TileEntityShadowEye() { opening = 1; @@ -45,6 +45,7 @@ public class TileEntityShadowEye extends TileEntity nbt.setInteger("opening", opening); nbt.setInteger("timer", timer); nbt.setBoolean("active", active); + nbt.setBoolean("shouldAddData", shouldAddData); } /** @@ -57,6 +58,7 @@ public class TileEntityShadowEye extends TileEntity opening = nbt.getInteger("opening"); timer = nbt.getInteger("timer"); active = nbt.getBoolean("active"); + shouldAddData = nbt.getBoolean("shouldAddData"); } /** @@ -68,6 +70,11 @@ public class TileEntityShadowEye extends TileEntity super.updateEntity(); boolean valid = isValidStructure(worldObj, xCoord, yCoord, zCoord, blockMetadata); if (active) timer--; + if (active && target != null && this.getDistanceFrom(target.posX, target.posY, target.posZ) > 30D){ + active = false; + timer = -1; + shouldAddData = false; + } if (opening == 4 && timer <= 0) active = false; if (!active && timer <= 0 && opening != 1){ if (t > 0) t--; @@ -76,7 +83,7 @@ public class TileEntityShadowEye extends TileEntity t = 20; } } - if (opening == 2 && timer <= 0 && t == 10){ + if (opening == 2 && timer <= 0 && t == 10 && shouldAddData){ addData(worldObj, xCoord, yCoord, zCoord); TileEntityHandPedestal target = (TileEntityHandPedestal)worldObj.getTileEntity(xCoord, yCoord - 3, zCoord); if (target != null && target.getHeldItemStack() != null) JewelryNBT.addModifiers(target.getHeldItemStack(), pedestalItems); @@ -92,11 +99,11 @@ public class TileEntityShadowEye extends TileEntity timer = -1; } } - EntityPlayer player1 = worldObj.getClosestPlayer(xCoord, yCoord, zCoord, 7F); - if (player1 != null){ - NBTTagCompound persistTag = PlayerUtils.getModPlayerPersistTag(player1, "Jewelrycraft"); - persistTag.setBoolean("nearStartedRitual", false); - } + for(Object player: worldObj.getEntitiesWithinAABB(EntityPlayer.class, getRenderBoundingBox().expand(10D, 10D, 10D))) + if (player != null){ + NBTTagCompound persistTag = PlayerUtils.getModPlayerPersistTag((EntityPlayer)player, Variables.MODID); + persistTag.setBoolean("nearStartedRitual", false); + } if (active && opening == 4){ float din = 6F; int i = Minecraft.getMinecraft().gameSettings.particleSetting; @@ -105,11 +112,11 @@ public class TileEntityShadowEye extends TileEntity if (x * x + z * z >= din * din - 1 && x * x + z * z <= din * din + 1) Minecraft.getMinecraft().effectRenderer.addEffect(new EntityShadowsFX(worldObj, xCoord + x + 0.5F, yCoord - 0.5F, zCoord + z + 0.5F, 15F, 0.04F - 0.01F * i, particleTexture)); for(int l = 0; l <= 2 - i; l++) worldObj.spawnParticle("depthsuspend", xCoord + 6.5F - worldObj.rand.nextInt(9) - worldObj.rand.nextFloat(), yCoord - 2F + worldObj.rand.nextFloat(), zCoord + 6.5F - worldObj.rand.nextInt(9) - worldObj.rand.nextFloat(), 0, 0, 0); - EntityPlayer player = worldObj.getClosestPlayer(xCoord, yCoord, zCoord, 6F); - if (player != null){ - NBTTagCompound persistTag = PlayerUtils.getModPlayerPersistTag(player, "Jewelrycraft"); - persistTag.setBoolean("nearStartedRitual", true); - } + for(Object player: worldObj.getEntitiesWithinAABB(EntityPlayer.class, getRenderBoundingBox().expand(10D, 10D, 10D))) + if (player != null){ + NBTTagCompound persistTag = PlayerUtils.getModPlayerPersistTag((EntityPlayer)player, Variables.MODID); + persistTag.setBoolean("nearStartedRitual", true); + } } } @@ -247,6 +254,7 @@ public class TileEntityShadowEye extends TileEntity pedestal.removeHeldItemStack(); pedestal.openHand(); } + else if(pedestal != null && target != null) JewelrycraftUtil.addCursePoints(target, 20); } /** diff --git a/src/main/java/darkknight/jewelrycraft/tileentity/renders/ItemRender.java b/src/main/java/darkknight/jewelrycraft/tileentity/renders/ItemRender.java deleted file mode 100644 index 31e5676..0000000 --- a/src/main/java/darkknight/jewelrycraft/tileentity/renders/ItemRender.java +++ /dev/null @@ -1,65 +0,0 @@ -package darkknight.jewelrycraft.tileentity.renders; - -import net.minecraft.client.model.ModelBase; -import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; -import net.minecraft.item.ItemStack; -import net.minecraft.tileentity.TileEntity; -import net.minecraftforge.client.IItemRenderer; -import org.lwjgl.opengl.GL11; - -public class ItemRender implements IItemRenderer -{ - TileEntitySpecialRenderer render; - public TileEntity entity; - ModelBase model; - - /** - * @param render - * @param entity - * @param model - */ - public ItemRender(TileEntitySpecialRenderer render, TileEntity entity, ModelBase model) - { - this.entity = entity; - this.render = render; - this.model = model; - } - - /** - * @param item - * @param type - * @return - */ - @Override - public boolean handleRenderType(ItemStack item, ItemRenderType type) - { - return true; - } - - /** - * @param type - * @param item - * @param helper - * @return - */ - @Override - public boolean shouldUseRenderHelper(ItemRenderType type, ItemStack item, ItemRendererHelper helper) - { - return true; - } - - /** - * @param type - * @param item - * @param data - */ - @Override - public void renderItem(ItemRenderType type, ItemStack item, Object ... data) - { - if (type == IItemRenderer.ItemRenderType.ENTITY){ - GL11.glRotatef(180f, 0f, 1f, 0f); - GL11.glTranslatef(-0.5f, -0.5f, -0.4f); - } - render.renderTileEntityAt(entity, 0.0D, 0.0D, 0.0D, 0.0F); - } -} diff --git a/src/main/java/darkknight/jewelrycraft/tileentity/renders/MaskRender.java b/src/main/java/darkknight/jewelrycraft/tileentity/renders/MaskRender.java deleted file mode 100644 index 1e26107..0000000 --- a/src/main/java/darkknight/jewelrycraft/tileentity/renders/MaskRender.java +++ /dev/null @@ -1,30 +0,0 @@ -package darkknight.jewelrycraft.tileentity.renders; - -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.util.ResourceLocation; -import org.lwjgl.opengl.GL11; -import darkknight.jewelrycraft.model.ModelMask; -import darkknight.jewelrycraft.tileentity.TileEntityDisplayer; - -public class MaskRender extends TileEntitySpecialRenderer -{ - ModelMask mask = new ModelMask(); - ResourceLocation texture = new ResourceLocation("jewelrycraft", "textures/entities/Mask.png"); - - @Override - public void renderTileEntityAt(TileEntity te, double x, double y, double z, float scale) - { - } - - public void doRender(Entity entity, double x, double y, double z, float f, float g) - { - GL11.glPushMatrix(); - Minecraft.getMinecraft().renderEngine.bindTexture(texture); - mask.render(entity, 0F, 0F, 0F, 0F, 0F, 0.02F); - GL11.glPopMatrix(); - } -}
\ No newline at end of file diff --git a/src/main/java/darkknight/jewelrycraft/tileentity/renders/TileEntityDisplayerRender.java b/src/main/java/darkknight/jewelrycraft/tileentity/renders/TileEntityDisplayerRender.java index 8cff8bc..ab073fa 100644 --- a/src/main/java/darkknight/jewelrycraft/tileentity/renders/TileEntityDisplayerRender.java +++ b/src/main/java/darkknight/jewelrycraft/tileentity/renders/TileEntityDisplayerRender.java @@ -21,6 +21,7 @@ import net.minecraft.util.ResourceLocation; import org.lwjgl.opengl.GL11; import darkknight.jewelrycraft.model.ModelDisplayer; import darkknight.jewelrycraft.tileentity.TileEntityDisplayer; +import darkknight.jewelrycraft.util.Variables; public class TileEntityDisplayerRender extends TileEntitySpecialRenderer { @@ -60,7 +61,7 @@ public class TileEntityDisplayerRender extends TileEntitySpecialRenderer GL11.glPushMatrix(); GL11.glTranslatef((float)x + 0.5F, (float)y + 1.5F, (float)z + 0.5F); TileEntityDisplayer disp = (TileEntityDisplayer)te; - ResourceLocation blockTexture = new ResourceLocation("jewelrycraft", texture); + ResourceLocation blockTexture = new ResourceLocation(Variables.MODID, texture); Minecraft.getMinecraft().renderEngine.bindTexture(blockTexture); GL11.glPushMatrix(); GL11.glRotatef(180F, 0.0F, 0.0F, 1.0F); diff --git a/src/main/java/darkknight/jewelrycraft/tileentity/renders/TileEntityJewelrsCraftingTableRender.java b/src/main/java/darkknight/jewelrycraft/tileentity/renders/TileEntityJewelrsCraftingTableRender.java index 7a8e35b..248ac2e 100644 --- a/src/main/java/darkknight/jewelrycraft/tileentity/renders/TileEntityJewelrsCraftingTableRender.java +++ b/src/main/java/darkknight/jewelrycraft/tileentity/renders/TileEntityJewelrsCraftingTableRender.java @@ -14,6 +14,7 @@ import net.minecraft.world.World; import org.lwjgl.opengl.GL11; import darkknight.jewelrycraft.model.ModelJewlersCraftingBench; import darkknight.jewelrycraft.tileentity.TileEntityJewelrsCraftingTable; +import darkknight.jewelrycraft.util.Variables; public class TileEntityJewelrsCraftingTableRender extends TileEntitySpecialRenderer { @@ -32,7 +33,7 @@ public class TileEntityJewelrsCraftingTableRender extends TileEntitySpecialRende { GL11.glPushMatrix(); GL11.glTranslatef((float)x + 0.5F, (float)y + 1.5F, (float)z + 0.5F); - ResourceLocation blockTexture = new ResourceLocation("jewelrycraft", texture); + ResourceLocation blockTexture = new ResourceLocation(Variables.MODID, texture); Minecraft.getMinecraft().renderEngine.bindTexture(blockTexture); TileEntityJewelrsCraftingTable jt = (TileEntityJewelrsCraftingTable)te; GL11.glPushMatrix(); diff --git a/src/main/java/darkknight/jewelrycraft/tileentity/renders/TileEntityMolderRender.java b/src/main/java/darkknight/jewelrycraft/tileentity/renders/TileEntityMolderRender.java index 9685e2e..f54b175 100644 --- a/src/main/java/darkknight/jewelrycraft/tileentity/renders/TileEntityMolderRender.java +++ b/src/main/java/darkknight/jewelrycraft/tileentity/renders/TileEntityMolderRender.java @@ -21,6 +21,7 @@ import darkknight.jewelrycraft.item.ItemList; import darkknight.jewelrycraft.model.ModelMolder; import darkknight.jewelrycraft.tileentity.TileEntityMolder; import darkknight.jewelrycraft.util.JewelryNBT; +import darkknight.jewelrycraft.util.Variables; public class TileEntityMolderRender extends TileEntitySpecialRenderer { @@ -40,7 +41,7 @@ public class TileEntityMolderRender extends TileEntitySpecialRenderer GL11.glTranslatef((float)x + 0.5F, (float)y + 1.5F, (float)z + 0.5F); TileEntityMolder me = (TileEntityMolder)te; String texture = "textures/tileentities/Molder.png"; - ResourceLocation blockTexture = new ResourceLocation("jewelrycraft", texture); + ResourceLocation blockTexture = new ResourceLocation(Variables.MODID, texture); Minecraft.getMinecraft().renderEngine.bindTexture(blockTexture); GL11.glPushMatrix(); GL11.glRotatef(180F, 0.0F, 0.0F, 1.0F); diff --git a/src/main/java/darkknight/jewelrycraft/tileentity/renders/TileEntityShadowEyeRender.java b/src/main/java/darkknight/jewelrycraft/tileentity/renders/TileEntityShadowEyeRender.java index 7bf2363..0bdca50 100644 --- a/src/main/java/darkknight/jewelrycraft/tileentity/renders/TileEntityShadowEyeRender.java +++ b/src/main/java/darkknight/jewelrycraft/tileentity/renders/TileEntityShadowEyeRender.java @@ -13,6 +13,7 @@ import net.minecraft.world.World; import org.lwjgl.opengl.GL11; import darkknight.jewelrycraft.model.ModelShadowEye; import darkknight.jewelrycraft.tileentity.TileEntityShadowEye; +import darkknight.jewelrycraft.util.Variables; public class TileEntityShadowEyeRender extends TileEntitySpecialRenderer { @@ -32,7 +33,7 @@ public class TileEntityShadowEyeRender extends TileEntitySpecialRenderer GL11.glTranslatef((float)x + 0.5F, (float)y + 1.6F, (float)z + 0.5F); TileEntityShadowEye eyeS = (TileEntityShadowEye)te; String texture = "textures/tileentities/ShadowEye" + eyeS.opening + ".png"; - ResourceLocation blockTexture = new ResourceLocation("jewelrycraft", texture); + ResourceLocation blockTexture = new ResourceLocation(Variables.MODID, texture); Minecraft.getMinecraft().renderEngine.bindTexture(blockTexture); GL11.glPushMatrix(); GL11.glRotatef(180F, 0.0F, 0.0F, 1.0F); diff --git a/src/main/java/darkknight/jewelrycraft/tileentity/renders/TileEntitySmelterRender.java b/src/main/java/darkknight/jewelrycraft/tileentity/renders/TileEntitySmelterRender.java index e6a92a5..2892ead 100644 --- a/src/main/java/darkknight/jewelrycraft/tileentity/renders/TileEntitySmelterRender.java +++ b/src/main/java/darkknight/jewelrycraft/tileentity/renders/TileEntitySmelterRender.java @@ -19,6 +19,7 @@ import darkknight.jewelrycraft.item.ItemList; import darkknight.jewelrycraft.model.ModelSmelter; import darkknight.jewelrycraft.tileentity.TileEntitySmelter; import darkknight.jewelrycraft.util.JewelryNBT; +import darkknight.jewelrycraft.util.Variables; public class TileEntitySmelterRender extends TileEntitySpecialRenderer { @@ -38,7 +39,7 @@ public class TileEntitySmelterRender extends TileEntitySpecialRenderer GL11.glPushMatrix(); GL11.glTranslatef((float)x + 0.5F, (float)y + 1.5F, (float)z + 0.5F); String texture = "textures/tileentities/Smelter.png"; - ResourceLocation blockTexture = new ResourceLocation("jewelrycraft", texture); + ResourceLocation blockTexture = new ResourceLocation(Variables.MODID, texture); Minecraft.getMinecraft().renderEngine.bindTexture(blockTexture); TileEntitySmelter st = (TileEntitySmelter)te; GL11.glRotatef(180F, 0.0F, 0.0F, 1.0F); |
