From 08b36054ce993cd73d7b237867347224341e9791 Mon Sep 17 00:00:00 2001 From: StevenRS11 Date: Tue, 10 Sep 2013 15:50:15 -0400 Subject: [PATCH] Gold dim door working Needs to gen the right type of door. --- .../blocks/BlockGoldDimDoor.java | 9 ++++++ .../items/ItemRiftSignature.java | 1 + .../mod_pocketDim/mod_pocketDim.java | 4 ++- .../tileentities/TileEntityDimDoorGold.java | 26 +++++++++--------- .../textures/blocks/dimDoorGold_bottom.png | Bin 3327 -> 3403 bytes .../textures/blocks/dimDoorGold_top.png | Bin 3251 -> 3325 bytes .../textures/blocks/doorGold_bottom.png | Bin 3327 -> 3403 bytes .../DimDoors/textures/blocks/doorGold_top.png | Bin 3251 -> 3325 bytes 8 files changed, 26 insertions(+), 14 deletions(-) diff --git a/StevenDimDoors/mod_pocketDim/blocks/BlockGoldDimDoor.java b/StevenDimDoors/mod_pocketDim/blocks/BlockGoldDimDoor.java index 22c1853..38b9fc7 100644 --- a/StevenDimDoors/mod_pocketDim/blocks/BlockGoldDimDoor.java +++ b/StevenDimDoors/mod_pocketDim/blocks/BlockGoldDimDoor.java @@ -2,12 +2,15 @@ package StevenDimDoors.mod_pocketDim.blocks; import net.minecraft.block.material.Material; import net.minecraft.item.Item; +import net.minecraft.tileentity.TileEntity; import net.minecraft.world.World; import StevenDimDoors.mod_pocketDim.DDProperties; import StevenDimDoors.mod_pocketDim.core.DimLink; import StevenDimDoors.mod_pocketDim.core.LinkTypes; import StevenDimDoors.mod_pocketDim.core.NewDimData; import StevenDimDoors.mod_pocketDim.core.PocketManager; +import StevenDimDoors.mod_pocketDim.tileentities.TileEntityDimDoor; +import StevenDimDoors.mod_pocketDim.tileentities.TileEntityDimDoorGold; public class BlockGoldDimDoor extends BaseDimDoor implements IDimDoor { @@ -37,5 +40,11 @@ public class BlockGoldDimDoor extends BaseDimDoor implements IDimDoor { return this.properties.GoldDoorItemID; } + + @Override + public TileEntity createNewTileEntity(World world) + { + return new TileEntityDimDoorGold(); + } } diff --git a/StevenDimDoors/mod_pocketDim/items/ItemRiftSignature.java b/StevenDimDoors/mod_pocketDim/items/ItemRiftSignature.java index b4003fe..aae42db 100644 --- a/StevenDimDoors/mod_pocketDim/items/ItemRiftSignature.java +++ b/StevenDimDoors/mod_pocketDim/items/ItemRiftSignature.java @@ -45,6 +45,7 @@ public class ItemRiftSignature extends Item @Override public boolean onItemUseFirst(ItemStack stack, EntityPlayer player, World world, int x, int y, int z, int side, float hitX, float hitY, float hitZ) { + //TODO- recognize doors and intelligently place rifts on them. // We must use onItemUseFirst() instead of onItemUse() because Minecraft checks // whether the user is in creative mode after calling onItemUse() and undoes any // damage we might set to indicate the rift sig has been activated. Otherwise, diff --git a/StevenDimDoors/mod_pocketDim/mod_pocketDim.java b/StevenDimDoors/mod_pocketDim/mod_pocketDim.java index 1523c19..e9c2e8c 100644 --- a/StevenDimDoors/mod_pocketDim/mod_pocketDim.java +++ b/StevenDimDoors/mod_pocketDim/mod_pocketDim.java @@ -148,6 +148,7 @@ public class mod_pocketDim @PreInit public void onPreInitialization(FMLPreInitializationEvent event) { + this.instance = this; //This should be the FIRST thing that gets done. properties = DDProperties.initialize(event.getSuggestedConfigurationFile()); @@ -386,7 +387,6 @@ public class mod_pocketDim //Register loot chests DDLoot.registerInfo(); } - @ServerStopping public void onServerStopping(FMLServerStoppingEvent event) { @@ -403,6 +403,8 @@ public class mod_pocketDim @ServerStarting public void onServerStarting(FMLServerStartingEvent event) { + + //TODO- load dims with forced chunks on server startup here /* CommandResetDungeons.instance().register(event); CommandCreateDungeonRift.instance().register(event); diff --git a/StevenDimDoors/mod_pocketDim/tileentities/TileEntityDimDoorGold.java b/StevenDimDoors/mod_pocketDim/tileentities/TileEntityDimDoorGold.java index d57aa37..2de4528 100644 --- a/StevenDimDoors/mod_pocketDim/tileentities/TileEntityDimDoorGold.java +++ b/StevenDimDoors/mod_pocketDim/tileentities/TileEntityDimDoorGold.java @@ -21,16 +21,19 @@ public class TileEntityDimDoorGold extends TileEntityDimDoor public void updateEntity() { - if(this.chunkTicket==null) - { - chunkTicket = ForgeChunkManager.requestTicket(mod_pocketDim.instance, worldObj, Type.NORMAL); + if(PocketManager.getDimensionData(this.worldObj)!=null&&PocketManager.getDimensionData(this.worldObj).isPocketDimension()&&!this.worldObj.isRemote) + { + if(this.chunkTicket==null) + { + chunkTicket = ForgeChunkManager.requestTicket(mod_pocketDim.instance, worldObj, Type.NORMAL); + } + + chunkTicket.getModData().setInteger("goldDimDoorX", xCoord); + chunkTicket.getModData().setInteger("goldDimDoorY", yCoord); + chunkTicket.getModData().setInteger("goldDimDoorZ", zCoord); + ForgeChunkManager.forceChunk(chunkTicket, new ChunkCoordIntPair(xCoord >> 4, zCoord >> 4)); + forceChunkLoading(chunkTicket); } - - chunkTicket.getModData().setInteger("goldDimDoorX", xCoord); - chunkTicket.getModData().setInteger("goldDimDoorY", yCoord); - chunkTicket.getModData().setInteger("goldDimDoorZ", zCoord); - - this.forceChunkLoading(chunkTicket); } public void forceChunkLoading(Ticket chunkTicket) @@ -48,10 +51,7 @@ public class TileEntityDimDoorGold extends TileEntityDimDoor { ForgeChunkManager.forceChunk(chunkTicket, new ChunkCoordIntPair((xCoord >> 4)+chunks, (zCoord >> 4)+chunks)); - } - - - + } } diff --git a/resources/mods/DimDoors/textures/blocks/dimDoorGold_bottom.png b/resources/mods/DimDoors/textures/blocks/dimDoorGold_bottom.png index 85221b983ad9e35538cf043d8cb0235d165619a1..9e00119f429afe8e11e891daecd142c1ac4c8861 100644 GIT binary patch delta 664 zcmV;J0%!gI8Os{5zzTnMNklCDl%hQp1P@X~p$#fpkp!{I5+bP$lBTJK5L44UVpA? zra*a%Lz7k;iS2HvdOwsqistbcn#WHG;Etks^n@VwLCD%I$Z7}9iUK8rLz7m-2XsL> zcW9#f&=)?2a!09GzYA&iKvqKVOo7vaKyi~p^Gtz%KLn%|CKpa0RDA%dJ_vO1MOLKxDDkhn4AI~bwq^#Q1QKV+>Jvf2)5wLw_?A3V zTv_5Ul>3MvP9M3b-Gr=m;G!%bDW zW=L?5q%(gPXV_k%>Bc*T*$Exm);z=3JT)?_6lZsh0M$<ClwoFEhqgM+ yF!x%=>;%=!IGtB}SL^L7s_B$~`v# delta 587 zcmV-R0<`_h8vhxvzzTmVNkl1&cf<$mdmHHWhPS$) zehH!>*t-S$w*`oXU~f2v^uzW!2v31)gvI{=XP|Z=Rg8vU@22*~Ak;5P#BTvF%khTc z7YxJ8#1UH6Q0swupVS(cq1LN<&<=hxxJ}?1hiitrXc$48hJ$uB?+nPn?scix`xI@v z8-fn?1s(rHh%JBNWz$D&T!Gzdg4B9r7iX2-Zw9}GqiO>1vf!Gm1s!RO1hn0)b9frU zPQ5`4*jzB|`$r>MHV(=$#BY(!uu~5kv}xFH1-FUg4dcgWsV}}XELt||?*;h19{&@r z#a3Ijdnf)5M$1yJI7a@lVbwWfecq_frJ$p#3F2iqTvLB78FUxbTXBrpCx+b})}i94 z>DM;_2US z-dM`3P;nGzeO`e571<4os#P38Dvq%_ZR8#qwlbLlHW#Fn*bIv)AS~)W$zRGD<0CO( zb=p{&l)XdpjPiY&)k?mTyYh^BOF84k1H+tW#;b>-jgP1}KBC&hXj)IcpWjc{(|g9B Z0RS`=yk?a>-`oHI002ovPDHLkV1ltzBaZ+8 diff --git a/resources/mods/DimDoors/textures/blocks/dimDoorGold_top.png b/resources/mods/DimDoors/textures/blocks/dimDoorGold_top.png index 1b4339a852448b1ee6cff0b7ca702afb2b329b3d..af4d1a82691a5a80b647c0a02c83248faf88b5f8 100644 GIT binary patch delta 586 zcmV-Q0=50K8T}cszY2c>C`m*?RCwBSl1*zGQ51#;`f;yF5D^KHQi=o#5=sc6ixdgL zMF?G#AYFv4N`Fm%MYkoCmJnJJvMIDp!=N!%=S#;KjFb`vu@b~{rSNufM$k-+%@FY`#i|11#b61}oSpi5kx@!qdU45|{tx&(h2F_4)+pi5|js>F4T ze+K%^gHc0b)Zp*i78x;I913XHHGbGDGw3G69LSmnnF&6daSZF6gv>Zb4T&Eg1+<^v zxa2^W`1AXn_U}@yJjhB%?#WDISeH0I5YS$|xI4`r0eBlwt>q}d$%4!zoD%`<&Fgy@ zHQ1yGz~6>)*JghLtYg6@k`V)0DUg$e@(NJ?7RHw)j62Vv{373Z8&K{Fl)H+FH0xME z`}LiTyRJz#%+7$COHi$4sP;OP`5<-y@M0zM9 zMLZM{40O-ceB}O@!-WGBK&%o-Na_?Vc321zWLsK z-;5-uf`6=$oC>!W!sDfYtMSmy&IRy_;FZ8s!PdbQWR&!Z3iN-<3NRH7uRIZ@5hgeh zL>Vjk;*(2E4g48>$<)A1>76V3Zz@DT1i9~w+vV=N{1f3D@Tc>6>ws6rKNjS0N5-#D z0taglF6Q&WJXnXDb3s0Tl2k$=4@@?pzx-c<-)EVLrV6$J!E1^Kg#n=Xzs(PS>bxlsTI^0!~ z=Omb#PC+Hqlz9?(y|0pT(`kZrh<}bcaGoF6)t>6l5wyV8G2aAv=%!QfU#LOxDhxhC zvNbj_*+@-Xg5E2z4IVFr&X-Jrb)fe$oj_W6y$@G=TAX)mDN)oW(~nog{VE7E9}dvmHWY-&N&)?BclU)xZ#y%NER&^;3V4ghFVCDl%hQp1P@X~p$#fpkp!{I5+bP$lBTJK5L44UVpA? zra*a%Lz7k;iS2HvdOwsqistbcn#WHG;Etks^n@VwLCD%I$Z7}9iUK8rLz7m-2XsL> zcW9#f&=)?2a!09GzYA&iKvqKVOo7vaKyi~p^Gtz%KLn%|CKpa0RDA%dJ_vO1MOLKxDDkhn4AI~bwq^#Q1QKV+>Jvf2)5wLw_?A3V zTv_5Ul>3MvP9M3b-Gr=m;G!%bDW zW=L?5q%(gPXV_k%>Bc*T*$Exm);z=3JT)?_6lZsh0M$<ClwoFEhqgM+ yF!x%=>;%=!IGtB}SL^L7s_B$~`v# delta 587 zcmV-R0<`_h8vhxvzzTmVNkl1&cf<$mdmHHWhPS$) zehH!>*t-S$w*`oXU~f2v^uzW!2v31)gvI{=XP|Z=Rg8vU@22*~Ak;5P#BTvF%khTc z7YxJ8#1UH6Q0swupVS(cq1LN<&<=hxxJ}?1hiitrXc$48hJ$uB?+nPn?scix`xI@v z8-fn?1s(rHh%JBNWz$D&T!Gzdg4B9r7iX2-Zw9}GqiO>1vf!Gm1s!RO1hn0)b9frU zPQ5`4*jzB|`$r>MHV(=$#BY(!uu~5kv}xFH1-FUg4dcgWsV}}XELt||?*;h19{&@r z#a3Ijdnf)5M$1yJI7a@lVbwWfecq_frJ$p#3F2iqTvLB78FUxbTXBrpCx+b})}i94 z>DM;_2US z-dM`3P;nGzeO`e571<4os#P38Dvq%_ZR8#qwlbLlHW#Fn*bIv)AS~)W$zRGD<0CO( zb=p{&l)XdpjPiY&)k?mTyYh^BOF84k1H+tW#;b>-jgP1}KBC&hXj)IcpWjc{(|g9B Z0RS`=yk?a>-`oHI002ovPDHLkV1ltzBaZ+8 diff --git a/resources/mods/DimDoors/textures/blocks/doorGold_top.png b/resources/mods/DimDoors/textures/blocks/doorGold_top.png index 1b4339a852448b1ee6cff0b7ca702afb2b329b3d..af4d1a82691a5a80b647c0a02c83248faf88b5f8 100644 GIT binary patch delta 586 zcmV-Q0=50K8T}cszY2c>C`m*?RCwBSl1*zGQ51#;`f;yF5D^KHQi=o#5=sc6ixdgL zMF?G#AYFv4N`Fm%MYkoCmJnJJvMIDp!=N!%=S#;KjFb`vu@b~{rSNufM$k-+%@FY`#i|11#b61}oSpi5kx@!qdU45|{tx&(h2F_4)+pi5|js>F4T ze+K%^gHc0b)Zp*i78x;I913XHHGbGDGw3G69LSmnnF&6daSZF6gv>Zb4T&Eg1+<^v zxa2^W`1AXn_U}@yJjhB%?#WDISeH0I5YS$|xI4`r0eBlwt>q}d$%4!zoD%`<&Fgy@ zHQ1yGz~6>)*JghLtYg6@k`V)0DUg$e@(NJ?7RHw)j62Vv{373Z8&K{Fl)H+FH0xME z`}LiTyRJz#%+7$COHi$4sP;OP`5<-y@M0zM9 zMLZM{40O-ceB}O@!-WGBK&%o-Na_?Vc321zWLsK z-;5-uf`6=$oC>!W!sDfYtMSmy&IRy_;FZ8s!PdbQWR&!Z3iN-<3NRH7uRIZ@5hgeh zL>Vjk;*(2E4g48>$<)A1>76V3Zz@DT1i9~w+vV=N{1f3D@Tc>6>ws6rKNjS0N5-#D z0taglF6Q&WJXnXDb3s0Tl2k$=4@@?pzx-c<-)EVLrV6$J!E1^Kg#n=Xzs(PS>bxlsTI^0!~ z=Omb#PC+Hqlz9?(y|0pT(`kZrh<}bcaGoF6)t>6l5wyV8G2aAv=%!QfU#LOxDhxhC zvNbj_*+@-Xg5E2z4IVFr&X-Jrb)fe$oj_W6y$@G=TAX)mDN)oW(~nog{VE7E9}dvmHWY-&N&)?BclU)xZ#y%NER&^;3V4ghFV