summaryrefslogtreecommitdiff
path: root/common/darkknight/jewelrycraft/item/ItemRing.java
diff options
context:
space:
mode:
authorOnyxDarkKnight <sor1n.iliutza16@gmail.com>2013-12-27 01:03:03 +0200
committerOnyxDarkKnight <sor1n.iliutza16@gmail.com>2013-12-27 01:03:03 +0200
commit4d001997b81489da4bca149e6ba47e7ef08dc4b9 (patch)
treeb97a8e9d851834ed56dcb50561229c0b82db4a72 /common/darkknight/jewelrycraft/item/ItemRing.java
parent5991f25a58006bcae70b3a9d49fd0c70706e2de7 (diff)
Fixed and made so you can't teleport in another dimension the coords were set in
Diffstat (limited to 'common/darkknight/jewelrycraft/item/ItemRing.java')
-rw-r--r--common/darkknight/jewelrycraft/item/ItemRing.java9
1 files changed, 6 insertions, 3 deletions
diff --git a/common/darkknight/jewelrycraft/item/ItemRing.java b/common/darkknight/jewelrycraft/item/ItemRing.java
index 52fb376..9b2ab37 100644
--- a/common/darkknight/jewelrycraft/item/ItemRing.java
+++ b/common/darkknight/jewelrycraft/item/ItemRing.java
@@ -128,18 +128,21 @@ public class ItemRing extends Item
if (!world.isRemote){
if (JewelryNBT.playerPosX(stack) != -1 && JewelryNBT.playerPosY(stack) != -1 && JewelryNBT.playerPosZ(stack) != -1){
double posX = JewelryNBT.playerPosX(stack), posY = JewelryNBT.playerPosY(stack), posZ = JewelryNBT.playerPosZ(stack);
- if (JewelryNBT.dimension(stack) != -2 && JewelryNBT.dimName(stack) != null){
+ if (JewelryNBT.isJewelX(stack, new ItemStack(Item.enderPearl)) && JewelryNBT.isModifierX(stack, new ItemStack(Item.bed)) && JewelryNBT.dimension(stack) != -2 && JewelryNBT.dimName(stack) != null)
+ {
int dimension = JewelryNBT.dimension(stack);
for (int i = 1; i <= 20; i++) world.spawnParticle("largesmoke", player.posX - 0.5D + Math.random(), player.posY - 1.5D + Math.random(), player.posZ - 0.5D + Math.random(), 0.0D, 0.0D, 0.0D);
if (!JewelryNBT.isDimensionX(stack, player.dimension)) player.travelToDimension(dimension);
player.setPositionAndUpdate(posX, posY, posZ);
for (int i = 1; i <= 300; i++) world.spawnParticle("portal", posX - 0.5D + Math.random(), posY + Math.random(), posZ - 0.5D + Math.random(), 0.0D, 0.0D, 0.0D);
}
- else{
+ else if(JewelryNBT.isDimensionX(stack, player.dimension))
+ {
for (int i = 1; i <= 20; i++) world.spawnParticle("largesmoke", player.posX - 0.5D + Math.random(), player.posY - 1.5D + Math.random(), player.posZ - 0.5D + Math.random(), 0.0D, 0.0D, 0.0D);
player.setPositionAndUpdate(posX, posY, posZ);
for (int i = 1; i <= 300; i++) world.spawnParticle("portal", posX - 0.5D + Math.random(), posY + Math.random(), posZ - 0.5D + Math.random(), 0.0D, 0.0D, 0.0D);
}
+ else player.addChatMessage("You can't teleport to these coordonates! You need to be in the same dimension they were set!");
}
else if(JewelryNBT.isJewelX(stack, new ItemStack(Item.enderPearl)) && JewelryNBT.isModifierX(stack, new ItemStack(Item.bed)) && JewelryNBT.dimension(stack) == -2 && JewelryNBT.playerPosX(stack) == -1 && JewelryNBT.playerPosY(stack) == -1 && JewelryNBT.playerPosZ(stack) == -1){
JewelryNBT.addCoordonatesAndDimension(stack, player.posX, player.posY, player.posZ, world.provider.dimensionId, world.provider.getDimensionName());
@@ -162,7 +165,7 @@ public class ItemRing extends Item
else player.addChatMessage("You need to link the ring with a chest first, before using it!");
}
else if (JewelryNBT.isJewelX(stack, new ItemStack(Item.enderPearl)) && JewelryNBT.playerPosX(stack) == -1 && JewelryNBT.playerPosY(stack) == -1 && JewelryNBT.playerPosZ(stack) == -1){
- JewelryNBT.addCoordonates(stack, player.posX, player.posY, player.posZ);
+ JewelryNBT.addCoordonatesAndDimension(stack, player.posX, player.posY, player.posZ, world.provider.dimensionId, world.provider.getDimensionName());
JewelryNBT.addEnchantment(stack);
}
}