diff --git a/changelog b/changelog index f57182caa..5dc4a445d 100644 --- a/changelog +++ b/changelog @@ -1,6 +1,9 @@ ## Changed * Added more QMAW pages * Removed most old particle accelerator blocks from the creative inventory +* All dual wielded guns now render more accurately when dropped instead of only showing one gun +* Added support for left handed guns (currently unused)* +* Removed the presentations for the old particle accelerator and schottky diode ## Fixed * Fixed wood burner only being able to create one ash pile per item burned, even when that item yields more, creating a backlog in the internal ash value diff --git a/src/main/java/com/hbm/main/ModEventHandlerRenderer.java b/src/main/java/com/hbm/main/ModEventHandlerRenderer.java index 37fbc2d55..449b18eb9 100644 --- a/src/main/java/com/hbm/main/ModEventHandlerRenderer.java +++ b/src/main/java/com/hbm/main/ModEventHandlerRenderer.java @@ -89,6 +89,12 @@ public class ModEventHandlerRenderer { ModelRenderer box = getBoxFromType(renderer, EnumPlayerPart.LEFT_ARM); box.isHidden = true; } + if(renderGun.isLeftHanded()) { + partsHidden[EnumPlayerPart.LEFT_ARM.ordinal()] = true; + partsHidden[EnumPlayerPart.RIGHT_ARM.ordinal()] = true; + getBoxFromType(renderer, EnumPlayerPart.LEFT_ARM).isHidden = true; + getBoxFromType(renderer, EnumPlayerPart.RIGHT_ARM).isHidden = true; + } } } @@ -121,6 +127,7 @@ public class ModEventHandlerRenderer { RenderPlayer renderer = event.renderer; boolean akimbo = false; + boolean leftHand = false; ItemStack held = player.getHeldItem(); @@ -128,9 +135,8 @@ public class ModEventHandlerRenderer { IItemRenderer customRenderer = MinecraftForgeClient.getItemRenderer(held, IItemRenderer.ItemRenderType.EQUIPPED); if(customRenderer instanceof ItemRenderWeaponBase) { ItemRenderWeaponBase renderGun = (ItemRenderWeaponBase) customRenderer; - if(renderGun.isAkimbo()) { - akimbo = true; - } + if(renderGun.isAkimbo()) akimbo = true; + if(renderGun.isLeftHanded()) leftHand = true; } } @@ -148,6 +154,23 @@ public class ModEventHandlerRenderer { } } + if(leftHand) { + ModelBiped biped = renderer.modelBipedMain; + renderer.modelArmorChestplate.bipedLeftArm.rotateAngleY = renderer.modelArmor.bipedLeftArm.rotateAngleY = biped.bipedLeftArm.rotateAngleY = + 0.1F + biped.bipedHead.rotateAngleY; + renderer.modelArmorChestplate.bipedRightArm.rotateAngleY = renderer.modelArmor.bipedRightArm.rotateAngleY = biped.bipedRightArm.rotateAngleY = + -0.5F + biped.bipedHead.rotateAngleY; + + if(!isManly) { + AbstractClientPlayer acp = (AbstractClientPlayer) player; + Minecraft.getMinecraft().getTextureManager().bindTexture(acp.getLocationSkin()); + biped.bipedLeftArm.isHidden = false; + biped.bipedLeftArm.render(0.0625F); + biped.bipedRightArm.isHidden = false; + biped.bipedRightArm.render(0.0625F); + } + } + if(isManly) { if(manlyModel == null) manlyModel = new ModelMan(); @@ -200,6 +223,11 @@ public class ModEventHandlerRenderer { ModelBiped biped = renderer.modelBipedMain; renderer.modelArmorChestplate.bipedLeftArm.rotateAngleY = renderer.modelArmor.bipedLeftArm.rotateAngleY = biped.bipedLeftArm.rotateAngleY = 0.1F + biped.bipedHead.rotateAngleY; } + if(renderGun.isLeftHanded()) { + ModelBiped biped = renderer.modelBipedMain; + renderer.modelArmorChestplate.bipedLeftArm.rotateAngleY = renderer.modelArmor.bipedLeftArm.rotateAngleY = biped.bipedLeftArm.rotateAngleY = 0.1F + biped.bipedHead.rotateAngleY; + renderer.modelArmorChestplate.bipedRightArm.rotateAngleY = renderer.modelArmor.bipedRightArm.rotateAngleY = biped.bipedRightArm.rotateAngleY = -0.5F + biped.bipedHead.rotateAngleY; + } } } } @@ -216,7 +244,7 @@ public class ModEventHandlerRenderer { if(customRenderer instanceof ItemRenderWeaponBase) { ItemRenderWeaponBase renderWeapon = (ItemRenderWeaponBase) customRenderer; - if(renderWeapon.isAkimbo()) { + if(renderWeapon.isAkimbo() || renderWeapon.isLeftHanded()) { GL11.glPushMatrix(); renderer.modelBipedMain.bipedLeftArm.isHidden = false; renderer.modelBipedMain.bipedLeftArm.postRender(0.0625F); @@ -235,8 +263,14 @@ public class ModEventHandlerRenderer { GL11.glRotatef(50.0F, 0.0F, 1.0F, 0.0F); GL11.glRotatef(335.0F, 0.0F, 0.0F, 1.0F); GL11.glTranslatef(-0.9375F, -0.0625F, 0.0F); - renderWeapon.setupThirdPersonAkimbo(held); - renderWeapon.renderEquippedAkimbo(held); + if(renderWeapon.isLeftHanded()) { + GL11.glTranslatef(0.1875F, 0F, 0.0F); + renderWeapon.setupThirdPerson(held); + renderWeapon.renderEquippedAkimbo(held); + } else { + renderWeapon.setupThirdPersonAkimbo(held); + renderWeapon.renderEquippedAkimbo(held); + } GL11.glDisable(GL12.GL_RESCALE_NORMAL); GL11.glPopMatrix(); } diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderDANI.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderDANI.java index dfdaf13c5..1da273b6c 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderDANI.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderDANI.java @@ -193,6 +193,27 @@ public class ItemRenderDANI extends ItemRenderWeaponBase { ResourceManager.bio_revolver.renderAll(); GL11.glShadeModel(GL11.GL_FLAT); } + + @Override + public void renderEntity(ItemStack stack) { + GL11.glEnable(GL11.GL_LIGHTING); + GL11.glShadeModel(GL11.GL_SMOOTH); + + GL11.glPushMatrix(); + + GL11.glTranslated(-2, 1, 0); + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.dani_lunar_tex); + ResourceManager.bio_revolver.renderAll(); + GL11.glPopMatrix(); + + GL11.glPushMatrix(); + GL11.glTranslated(2, 1, 0); + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.dani_celestial_tex); + ResourceManager.bio_revolver.renderAll(); + GL11.glPopMatrix(); + + GL11.glShadeModel(GL11.GL_FLAT); + } @Override public void renderOther(ItemStack stack, ItemRenderType type) { diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderEOTT.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderEOTT.java index 76d653de5..15fac95a2 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderEOTT.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderEOTT.java @@ -238,6 +238,34 @@ public class ItemRenderEOTT extends ItemRenderWeaponBase { public void renderModTable(ItemStack stack, int index) { renderOther(stack, ItemRenderType.INVENTORY); } + + @Override + public void renderEntity(ItemStack stack) { + GL11.glEnable(GL11.GL_LIGHTING); + GL11.glShadeModel(GL11.GL_SMOOTH); + + GL11.glPushMatrix(); + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.eott_tex); + + GL11.glTranslated(-1, 1, 0); + ResourceManager.aberrator.renderPart("Gun"); + ResourceManager.aberrator.renderPart("Hammer"); + ResourceManager.aberrator.renderPart("Magazine"); + ResourceManager.aberrator.renderPart("Slide"); + ResourceManager.aberrator.renderPart("Sight"); + GL11.glPopMatrix(); + + GL11.glPushMatrix(); + GL11.glTranslated(1, 1, 0); + ResourceManager.aberrator.renderPart("Gun"); + ResourceManager.aberrator.renderPart("Hammer"); + ResourceManager.aberrator.renderPart("Magazine"); + ResourceManager.aberrator.renderPart("Slide"); + ResourceManager.aberrator.renderPart("Sight"); + GL11.glPopMatrix(); + + GL11.glShadeModel(GL11.GL_FLAT); + } @Override public void renderOther(ItemStack stack, ItemRenderType type) { diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderHeavyRevolver.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderHeavyRevolver.java index 2cf24c68e..bd7700d25 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderHeavyRevolver.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderHeavyRevolver.java @@ -19,7 +19,7 @@ public class ItemRenderHeavyRevolver extends ItemRenderWeaponBase { public ItemRenderHeavyRevolver(ResourceLocation texture) { this.texture = texture; } - + @Override protected float getTurnMagnitude(ItemStack stack) { return ItemGunBaseNT.getIsAiming(stack) ? 2.5F : -0.25F; } diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderMareslegAkimbo.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderMareslegAkimbo.java index 16c90287a..4ae026ddb 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderMareslegAkimbo.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderMareslegAkimbo.java @@ -180,6 +180,28 @@ public class ItemRenderMareslegAkimbo extends ItemRenderWeaponBase { public void renderModTable(ItemStack stack, int index) { renderOther(stack, ItemRenderType.INVENTORY); } + + @Override + public void renderEntity(ItemStack stack) { + GL11.glEnable(GL11.GL_LIGHTING); + GL11.glShadeModel(GL11.GL_SMOOTH); + + GL11.glPushMatrix(); + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.maresleg_tex); + + GL11.glTranslated(-1, 1, 0); + ResourceManager.maresleg.renderPart("Gun"); + ResourceManager.maresleg.renderPart("Lever"); + GL11.glPopMatrix(); + + GL11.glPushMatrix(); + GL11.glTranslated(1, 1, 0); + ResourceManager.maresleg.renderPart("Gun"); + ResourceManager.maresleg.renderPart("Lever"); + GL11.glPopMatrix(); + + GL11.glShadeModel(GL11.GL_FLAT); + } @Override public void renderOther(ItemStack stack, ItemRenderType type) { diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderUziAkimbo.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderUziAkimbo.java index 67f3c99ac..91d6820b5 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderUziAkimbo.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderUziAkimbo.java @@ -195,6 +195,7 @@ public class ItemRenderUziAkimbo extends ItemRenderWeaponBase { GL11.glShadeModel(GL11.GL_FLAT); } + @Override public void renderEntity(ItemStack stack) { GL11.glEnable(GL11.GL_LIGHTING); GL11.glShadeModel(GL11.GL_SMOOTH); diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderWeaponBase.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderWeaponBase.java index 3abb3a71c..34484b5e3 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderWeaponBase.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderWeaponBase.java @@ -33,8 +33,9 @@ public abstract class ItemRenderWeaponBase implements IItemRenderer { public static final ResourceLocation laser_flash = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/laser_flash.png"); public static float interp; - + public boolean isAkimbo() { return false; } + public boolean isLeftHanded() { return false; } @Override public boolean handleRenderType(ItemStack item, ItemRenderType type) { @@ -53,7 +54,8 @@ public abstract class ItemRenderWeaponBase implements IItemRenderer { GL11.glEnable(GL11.GL_CULL_FACE); switch(type) { case EQUIPPED_FIRST_PERSON: setupFirstPerson(item); renderFirstPerson(item); break; - case EQUIPPED: setupThirdPerson(item); renderEquipped(item); break; + case EQUIPPED: + if(isLeftHanded()) break; setupThirdPerson(item); renderEquipped(item); break; case INVENTORY: setupInv(item); renderInv(item); break; case ENTITY: setupEntity(item); renderEntity(item); break; } diff --git a/src/main/java/com/hbm/wiaj/cannery/CanneryHadron.java b/src/main/java/com/hbm/wiaj/cannery/CanneryHadron.java deleted file mode 100644 index 38438a9bc..000000000 --- a/src/main/java/com/hbm/wiaj/cannery/CanneryHadron.java +++ /dev/null @@ -1,679 +0,0 @@ -package com.hbm.wiaj.cannery; - -import com.hbm.blocks.ModBlocks; -import com.hbm.util.i18n.I18nUtil; -import com.hbm.wiaj.JarScene; -import com.hbm.wiaj.JarScript; -import com.hbm.wiaj.WorldInAJar; -import com.hbm.wiaj.actions.ActionCreateActor; -import com.hbm.wiaj.actions.ActionOffsetBy; -import com.hbm.wiaj.actions.ActionRemoveActor; -import com.hbm.wiaj.actions.ActionRotateBy; -import com.hbm.wiaj.actions.ActionSetBlock; -import com.hbm.wiaj.actions.ActionSetZoom; -import com.hbm.wiaj.actions.ActionWait; -import com.hbm.wiaj.actors.ActorFancyPanel; -import com.hbm.wiaj.actors.ActorFancyPanel.Orientation; - -import net.minecraft.client.Minecraft; -import net.minecraft.item.ItemStack; -import net.minecraft.block.Block; -import net.minecraft.init.Blocks; -import net.minecraftforge.common.util.ForgeDirection; - -public class CanneryHadron extends CanneryBase { - - @Override - public ItemStack getIcon() { - return new ItemStack(ModBlocks.hadron_core); - } - - @Override - public String getName() { - return "cannery.hadron"; - } - - @Override - public CanneryBase[] seeAlso() { - return new CanneryBase[] { - new CannerySchottky() - }; - } - - @Override - public JarScript createScript() { - WorldInAJar world = new WorldInAJar(25, 5, 25); - JarScript script = new JarScript(world); - - - - // FIRST SCENE: Show and explain the core component - JarScene scene0 = new JarScene(script); - scene0.add(new ActionSetZoom(4, 0)); - - scene0.add(new ActionSetBlock(12, 2, 12, ModBlocks.hadron_core, ForgeDirection.NORTH.ordinal())); - - scene0.add(new ActionCreateActor(1, new ActorFancyPanel(Minecraft.getMinecraft().fontRenderer, 0, -20, new Object[][] {{I18nUtil.resolveKey("cannery.hadron.0")}}, 200) - .setColors(colorCopper).setOrientation(Orientation.BOTTOM))); - - scene0.add(new ActionWait(100)); - scene0.add(new ActionRemoveActor(1)); - scene0.add(new ActionWait(5)); - - scene0.add(new ActionCreateActor(2, new ActorFancyPanel(Minecraft.getMinecraft().fontRenderer, 0, -20, new Object[][] {{I18nUtil.resolveKey("cannery.hadron.1")}}, 200) - .setColors(colorCopper).setOrientation(Orientation.BOTTOM))); - - scene0.add(new ActionWait(100)); - scene0.add(new ActionRemoveActor(2)); - scene0.add(new ActionWait(10)); - - scene0.add(new ActionCreateActor(3, new ActorFancyPanel(Minecraft.getMinecraft().fontRenderer, -14, 4, new Object[][] {{I18nUtil.resolveKey("cannery.hadron.2")}}, 200) - .setColors(colorCopper).setOrientation(Orientation.BOTTOM))); - - scene0.add(new ActionWait(80)); - scene0.add(new ActionRemoveActor(3)); - scene0.add(new ActionWait(5)); - - scene0.add(new ActionRotateBy(-90, 0, 10)); - - scene0.add(new ActionCreateActor(4, new ActorFancyPanel(Minecraft.getMinecraft().fontRenderer, 14, 4, new Object[][] {{I18nUtil.resolveKey("cannery.hadron.3")}}, 200) - .setColors(colorCopper).setOrientation(Orientation.BOTTOM))); - - scene0.add(new ActionWait(80)); - scene0.add(new ActionRemoveActor(4)); - scene0.add(new ActionWait(5)); - - scene0.add(new ActionRotateBy(90, 0, 10)); - - - - // SECOND SCENE: Begin building a coil around the core component - JarScene scene1 = new JarScene(script); - - scene1.add(new ActionSetZoom(4, 0)); - scene1.add(new ActionSetZoom(-2, 10)); - - for(int i = 0; i < 8; i++) { - double r = i * Math.PI / 4; - scene1.add(new ActionSetBlock(12 + (int)(Math.cos(r) * 1.5F), 2 + (int)(Math.sin(r) * 1.5F), 12, ModBlocks.hadron_coil_alloy)); - scene1.add(new ActionWait(2)); - } - - scene1.add(new ActionWait(5)); - - scene1.add(new ActionCreateActor(5, new ActorFancyPanel(Minecraft.getMinecraft().fontRenderer, 0, -25, new Object[][] {{I18nUtil.resolveKey("cannery.hadron.4")}}, 200) - .setColors(colorCopper).setOrientation(Orientation.BOTTOM))); - - scene1.add(new ActionWait(40)); - - for(Block block : new Block[] { - ModBlocks.hadron_coil_gold, - ModBlocks.hadron_coil_neodymium, - ModBlocks.hadron_coil_magtung, - ModBlocks.hadron_coil_schrabidium, - ModBlocks.hadron_coil_schrabidate, - ModBlocks.hadron_coil_starmetal, - ModBlocks.hadron_coil_chlorophyte, - ModBlocks.hadron_coil_mese - }) { - for(int i = 0; i < 8; i++) { - double r = i * Math.PI / 4; - scene1.add(new ActionSetBlock(12 + (int)(Math.cos(r) * 1.5F), 2 + (int)(Math.sin(r) * 1.5F), 12, block)); - scene1.add(new ActionWait(1)); - } - - scene1.add(new ActionWait(4)); - } - - scene1.add(new ActionWait(20)); - scene1.add(new ActionRemoveActor(5)); - scene1.add(new ActionWait(5)); - - for(int i = 0; i < 12; i++) { - double r = i * Math.PI / 6; - scene1.add(new ActionSetBlock(12 + (int)(Math.cos(r) * 2.75F), 2 + (int)(Math.sin(r) * 2.75F), 12, ModBlocks.hadron_plating)); - scene1.add(new ActionWait(2)); - } - - scene1.add(new ActionCreateActor(6, new ActorFancyPanel(Minecraft.getMinecraft().fontRenderer, 0, -40, new Object[][] {{I18nUtil.resolveKey("cannery.hadron.5")}}, 200) - .setColors(colorCopper).setOrientation(Orientation.BOTTOM))); - - scene1.add(new ActionWait(60)); - scene1.add(new ActionRemoveActor(6)); - scene1.add(new ActionWait(5)); - - - - // THIRD SCENE: Add the Access Terminal and Power Plug - JarScene scene2 = new JarScene(script); - scene2.add(new ActionSetZoom(2, 0)); - - scene2.add(new ActionWait(5)); - - for(int i = 7; i >= 0; i--) { - double r = i * Math.PI / 4; - scene2.add(new ActionSetBlock(12 + (int)(Math.cos(r) * 1.5F), 2 + (int)(Math.sin(r) * 1.5F), 12, ModBlocks.hadron_coil_neodymium)); - scene2.add(new ActionWait(1)); - } - - scene2.add(new ActionWait(20)); - - scene2.add(new ActionSetBlock(12 - 2, 2, 12, Blocks.air)); - scene2.add(new ActionWait(15)); - - scene2.add(new ActionSetBlock(12 - 2, 2, 12, ModBlocks.hadron_access, ForgeDirection.EAST.ordinal())); - scene2.add(new ActionWait(10)); - - scene2.add(new ActionCreateActor(7, new ActorFancyPanel(Minecraft.getMinecraft().fontRenderer, 36, 18, new Object[][] {{I18nUtil.resolveKey("cannery.hadron.6")}}, 100) - .setColors(colorCopper).setOrientation(Orientation.LEFT))); - - scene2.add(new ActionWait(80)); - scene2.add(new ActionRemoveActor(7)); - scene2.add(new ActionWait(20)); - - scene2.add(new ActionSetBlock(12, 2 + 2, 12, Blocks.air)); - scene2.add(new ActionWait(15)); - - scene2.add(new ActionSetBlock(12, 2 + 2, 12, ModBlocks.hadron_power)); - scene2.add(new ActionWait(10)); - - scene2.add(new ActionCreateActor(8, new ActorFancyPanel(Minecraft.getMinecraft().fontRenderer, 0, -45, new Object[][] {{I18nUtil.resolveKey("cannery.hadron.7")}}, 200) - .setColors(colorCopper).setOrientation(Orientation.BOTTOM))); - - scene2.add(new ActionWait(80)); - scene2.add(new ActionRemoveActor(8)); - scene2.add(new ActionWait(20)); - - - - // FOURTH SCENE: Add some coil segments and power them - JarScene scene3 = new JarScene(script); - scene3.add(new ActionSetZoom(2, 0)); - - for(int i = 0; i < 8; i++) { - double r = i * Math.PI / 4; - scene3.add(new ActionSetBlock(12 + (int)(Math.cos(r) * 1.5F), 2 + (int)(Math.sin(r) * 1.5F), 11, ModBlocks.hadron_coil_neodymium)); - scene3.add(new ActionWait(2)); - } - - for(int i = 0; i < 12; i++) { - double r = i * Math.PI / 6; - scene3.add(new ActionSetBlock(12 + (int)(Math.cos(r) * 2.75F), 2 + (int)(Math.sin(r) * 2.75F), 11, ModBlocks.hadron_plating)); - scene3.add(new ActionWait(2)); - } - - scene3.add(new ActionWait(5)); - - for(int i = 0; i < 8; i++) { - double r = i * Math.PI / 4; - scene3.add(new ActionSetBlock(12 + (int)(Math.cos(r) * 1.5F), 2 + (int)(Math.sin(r) * 1.5F), 10, ModBlocks.hadron_coil_neodymium)); - scene3.add(new ActionWait(2)); - } - - for(int i = 0; i < 12; i++) { - double r = i * Math.PI / 6; - scene3.add(new ActionSetBlock(12 + (int)(Math.cos(r) * 2.75F), 2 + (int)(Math.sin(r) * 2.75F), 10, ModBlocks.hadron_plating)); - scene3.add(new ActionWait(2)); - } - - scene3.add(new ActionWait(20)); - - scene3.add(new ActionSetBlock(12, 2 + 2, 10, Blocks.air)); - scene3.add(new ActionWait(15)); - - scene3.add(new ActionSetBlock(12, 2 + 2, 10, ModBlocks.hadron_power)); - scene3.add(new ActionWait(10)); - - scene3.add(new ActionCreateActor(9, new ActorFancyPanel(Minecraft.getMinecraft().fontRenderer, -28, -28, new Object[][] {{I18nUtil.resolveKey("cannery.hadron.8")}}, 200) - .setColors(colorCopper).setOrientation(Orientation.BOTTOM))); - - scene3.add(new ActionWait(40)); - - scene3.add(new ActionCreateActor(10, new ActorFancyPanel(Minecraft.getMinecraft().fontRenderer, -12, 28, new Object[][] {{I18nUtil.resolveKey("cannery.hadron.math.0")}, {I18nUtil.resolveKey("cannery.hadron.math.1")}}, 0) - .setColors(colorCopper).setOrientation(Orientation.LEFT))); - - scene3.add(new ActionWait(40)); - scene3.add(new ActionRemoveActor(10)); - scene3.add(new ActionWait(5)); - - for(int i = 0; i < 8; i++) { - double r = i * Math.PI / 4; - scene3.add(new ActionSetBlock(12 + (int)(Math.cos(r) * 1.5F), 2 + (int)(Math.sin(r) * 1.5F), 10, ModBlocks.hadron_coil_starmetal)); - scene3.add(new ActionWait(1)); - } - - scene3.add(new ActionCreateActor(13, new ActorFancyPanel(Minecraft.getMinecraft().fontRenderer, -12, 28, new Object[][] {{I18nUtil.resolveKey("cannery.hadron.math.2")}, {I18nUtil.resolveKey("cannery.hadron.math.3")}}, 0) - .setColors(colorCopper).setOrientation(Orientation.LEFT))); - - - scene3.add(new ActionWait(80)); - scene3.add(new ActionRemoveActor(9)); - scene3.add(new ActionWait(10)); - - scene3.add(new ActionCreateActor(11, new ActorFancyPanel(Minecraft.getMinecraft().fontRenderer, 0, -45, new Object[][] {{I18nUtil.resolveKey("cannery.hadron.9")}}, 200) - .setColors(colorCopper).setOrientation(Orientation.BOTTOM))); - - scene3.add(new ActionWait(80)); - scene3.add(new ActionRemoveActor(11)); - scene3.add(new ActionWait(5)); - - scene3.add(new ActionCreateActor(12, new ActorFancyPanel(Minecraft.getMinecraft().fontRenderer, 0, -45, new Object[][] {{I18nUtil.resolveKey("cannery.hadron.10")}}, 200) - .setColors(colorCopper).setOrientation(Orientation.BOTTOM))); - - scene3.add(new ActionWait(80)); - scene3.add(new ActionRemoveActor(12)); - scene3.add(new ActionWait(10)); - - scene3.add(new ActionRemoveActor(13)); - - for(int i = 7; i >= 0; i--) { - double r = i * Math.PI / 4; - scene3.add(new ActionSetBlock(12 + (int)(Math.cos(r) * 1.5F), 2 + (int)(Math.sin(r) * 1.5F), 10, ModBlocks.hadron_coil_neodymium)); - scene3.add(new ActionWait(1)); - } - - - - // FIFTH SCENE: Add a bend to the coil - JarScene scene4 = new JarScene(script); - scene4.add(new ActionSetZoom(2, 0)); - - scene4.add(new ActionOffsetBy(0, 0, 4, 10)); - scene4.add(new ActionRotateBy(90, 0, 10)); - - - // BEGIN CORNER SEGMENT - for(int z = 9; z >= 7; z--) { - for(int x = 11; x <= 14; x++) { - if(z == 7 && x == 11) continue; - scene4.add(new ActionSetBlock(x, 0, z, ModBlocks.hadron_plating)); - scene4.add(new ActionWait(2)); - } - } - - for(int z = 9; z >= 6; z--) { - for(int x = 10; x <= 14; x++) { - if(z == 6 && x <= 11) continue; - if(z <= 7 && x == 10) continue; - scene4.add(new ActionSetBlock(x, 1, z, z == 6 || x == 10 || (z == 7 && x == 11) ? ModBlocks.hadron_plating : ModBlocks.hadron_coil_neodymium)); - scene4.add(new ActionWait(2)); - } - } - - for(int z = 9; z >= 6; z--) { - for(int x = 10; x <= 14; x++) { - if(z == 6 && x <= 11) continue; - if(z <= 7 && x == 10) continue; - if(z == 9 && x == 12) continue; - if(z == 8 && x == 12) continue; - if(z == 8 && x == 13) continue; - if(z == 8 && x == 14) continue; - scene4.add(new ActionSetBlock(x, 2, z, z == 6 || x == 10 || (z == 7 && x == 11) ? ModBlocks.hadron_plating : ModBlocks.hadron_coil_neodymium)); - scene4.add(new ActionWait(2)); - } - } - // END CORNER SEGMENT - - - scene4.add(new ActionWait(5)); - - scene4.add(new ActionCreateActor(14, new ActorFancyPanel(Minecraft.getMinecraft().fontRenderer, -8, -35, new Object[][] {{I18nUtil.resolveKey("cannery.hadron.11")}}, 200) - .setColors(colorCopper).setOrientation(Orientation.BOTTOM))); - - scene4.add(new ActionWait(80)); - scene4.add(new ActionRemoveActor(14)); - scene4.add(new ActionWait(5)); - - scene4.add(new ActionCreateActor(15, new ActorFancyPanel(Minecraft.getMinecraft().fontRenderer, 24, -16, new Object[][] {{I18nUtil.resolveKey("cannery.hadron.12")}}, 200) - .setColors(colorCopper).setOrientation(Orientation.BOTTOM))); - - scene4.add(new ActionWait(80)); - scene4.add(new ActionRemoveActor(15)); - scene4.add(new ActionWait(10)); - - for(int z = 9; z >= 6; z--) { - for(int x = 10; x <= 14; x++) { - if(z == 6 && x <= 11) continue; - if(z <= 7 && x == 10) continue; - scene4.add(new ActionSetBlock(x, 3, z, z == 6 || x == 10 || (z == 7 && x == 11) ? ModBlocks.hadron_plating : ModBlocks.hadron_coil_neodymium)); - scene4.add(new ActionWait(2)); - } - } - - for(int z = 9; z >= 7; z--) { - for(int x = 11; x <= 14; x++) { - if(z == 7 && x == 11) continue; - scene4.add(new ActionSetBlock(x, 4, z, ModBlocks.hadron_plating)); - scene4.add(new ActionWait(2)); - } - } - - scene4.add(new ActionWait(10)); - - scene4.add(new ActionSetBlock(14, 2 + 2, 8, Blocks.air)); - scene4.add(new ActionWait(10)); - - scene4.add(new ActionSetBlock(14, 2 + 2, 8, ModBlocks.hadron_power)); - scene4.add(new ActionWait(10)); - - - - - // SIXTH SCENE: Reach the Analysis Chamber - JarScene scene5 = new JarScene(script); - scene5.add(new ActionSetZoom(2, 0)); - - for(int i = 0; i < 8; i++) { - double r = i * Math.PI / 4; - scene5.add(new ActionSetBlock(15, 2 + (int)(Math.sin(r) * 1.5F), 8 + (int)(Math.cos(r) * 1.5F), ModBlocks.hadron_coil_neodymium)); - scene5.add(new ActionWait(1)); - } - - for(int i = 0; i < 12; i++) { - double r = i * Math.PI / 6; - scene5.add(new ActionSetBlock(15, 2 + (int)(Math.sin(r) * 2.75F), 8 + (int)(Math.cos(r) * 2.75F), ModBlocks.hadron_plating)); - scene5.add(new ActionWait(1)); - } - - for(int i = 0; i < 8; i++) { - double r = i * Math.PI / 4; - scene5.add(new ActionSetBlock(16, 2 + (int)(Math.sin(r) * 1.5F), 8 + (int)(Math.cos(r) * 1.5F), ModBlocks.hadron_coil_neodymium)); - scene5.add(new ActionWait(1)); - } - - for(int i = 0; i < 12; i++) { - double r = i * Math.PI / 6; - scene5.add(new ActionSetBlock(16, 2 + (int)(Math.sin(r) * 2.75F), 8 + (int)(Math.cos(r) * 2.75F), i == 3 ? ModBlocks.hadron_power : ModBlocks.hadron_plating)); - scene5.add(new ActionWait(1)); - } - - - // BEGIN CORNER SEGMENT - for(int x = 17; x <= 19; x++) { - for(int z = 10; z >= 7; z--) { - if(z == 7 && x == 19) continue; - scene5.add(new ActionSetBlock(x, 0, z, ModBlocks.hadron_plating)); - scene5.add(new ActionWait(1)); - } - } - - for(int x = 17; x <= 20; x++) { - for(int z = 10; z >= 6; z--) { - if(z == 6 && x >= 19) continue; - if(z <= 7 && x == 20) continue; - scene5.add(new ActionSetBlock(x, 1, z, z == 6 || x == 20 || (z == 7 && x == 19) ? ModBlocks.hadron_plating : ModBlocks.hadron_coil_neodymium)); - scene5.add(new ActionWait(1)); - } - } - - for(int x = 17; x <= 20; x++) { - for(int z = 10; z >= 6; z--) { - if(z == 6 && x >= 19) continue; - if(z <= 7 && x == 20) continue; - if(z == 9 && x == 18) continue; - if(z == 8 && x == 18) continue; - if(z == 8 && x == 17) continue; - if(z == 10 && x == 18) continue; - scene5.add(new ActionSetBlock(x, 2, z, z == 6 || x == 20 || (z == 7 && x == 19) ? ModBlocks.hadron_plating : ModBlocks.hadron_coil_neodymium)); - scene5.add(new ActionWait(1)); - } - } - - for(int x = 17; x <= 20; x++) { - for(int z = 10; z >= 6; z--) { - if(z == 6 && x >= 19) continue; - if(z <= 7 && x == 20) continue; - scene5.add(new ActionSetBlock(x, 3, z, z == 6 || x == 20 || (z == 7 && x == 19) ? ModBlocks.hadron_plating : ModBlocks.hadron_coil_neodymium)); - scene5.add(new ActionWait(1)); - } - } - - for(int x = 17; x <= 19; x++) { - for(int z = 10; z >= 7; z--) { - if(z == 7 && x == 19) continue; - scene5.add(new ActionSetBlock(x, 4, z, ModBlocks.hadron_plating)); - scene5.add(new ActionWait(1)); - } - } - // END CORNER SEGMENT - - - scene5.add(new ActionRotateBy(-90, 0, 5)); - scene5.add(new ActionOffsetBy(0, 0, -8, 10)); - scene5.add(new ActionRotateBy(-90, 0, 10)); - scene5.add(new ActionSetZoom(-1, 10)); - - for(int z = 11; z <= 20; z++) { - for(int i = 0; i < 8; i++) { - double r = i * Math.PI / 4; - scene5.add(new ActionSetBlock(18 + (int)(Math.cos(r) * 1.5F), 2 + (int)(Math.sin(r) * 1.5F), z, ModBlocks.hadron_coil_neodymium)); - if(z == 11 || z == 20) scene5.add(new ActionWait(1)); - } - - for(int i = 0; i < 12; i++) { - double r = i * Math.PI / 6; - scene5.add(new ActionSetBlock(18 + (int)(Math.cos(r) * 2.75F), 2 + (int)(Math.sin(r) * 2.75F), z, i == 3 && z % 3 == 0 ? ModBlocks.hadron_power : ModBlocks.hadron_plating)); - if(z == 11 || z == 20) scene5.add(new ActionWait(1)); - } - - scene5.add(new ActionWait(z < 13 || z > 18 ? 2 : 1)); - } - - // SEVENTH SCENE: Actually build the Analysis Chamber - JarScene scene6 = new JarScene(script); - scene6.add(new ActionSetZoom(1, 0)); - - scene6.add(new ActionSetZoom(1, 10)); - - for(int i = 0; i < 8; i++) { - double r = i * Math.PI / 4; - scene6.add(new ActionSetBlock(12 + (int)(Math.cos(r) * 1.5F), 2 + (int)(Math.sin(r) * 1.5F), 13, ModBlocks.hadron_coil_neodymium)); - scene6.add(new ActionWait(1)); - } - - for(int i = 0; i < 12; i++) { - double r = i * Math.PI / 6; - scene6.add(new ActionSetBlock(12 + (int)(Math.cos(r) * 2.75F), 2 + (int)(Math.sin(r) * 2.75F), 13, ModBlocks.hadron_plating)); - scene6.add(new ActionWait(1)); - } - - for(int z = 14; z <= 16; z++) { - for(int i = 0; i < 12; i++) { - double r = i * Math.PI / 6; - scene6.add(new ActionSetBlock(12 + (int)(Math.cos(r) * 2.75F), 2 + (int)(Math.sin(r) * 2.75F), z, i == 6 ? ModBlocks.hadron_analysis_glass : ModBlocks.hadron_analysis)); - scene6.add(new ActionWait(2)); - } - } - - scene6.add(new ActionWait(10)); - - scene6.add(new ActionCreateActor(16, new ActorFancyPanel(Minecraft.getMinecraft().fontRenderer, 0, 0, new Object[][] {{I18nUtil.resolveKey("cannery.hadron.13")}}, 200) - .setColors(colorCopper).setOrientation(Orientation.BOTTOM))); - - scene6.add(new ActionWait(100)); - scene6.add(new ActionRemoveActor(16)); - scene6.add(new ActionWait(10)); - - for(int z = 17; z <= 20; z++) { - for(int i = 0; i < 8; i++) { - double r = i * Math.PI / 4; - scene6.add(new ActionSetBlock(12 + (int)(Math.cos(r) * 1.5F), 2 + (int)(Math.sin(r) * 1.5F), z, ModBlocks.hadron_coil_neodymium)); - if(z == 17 || z == 20) scene6.add(new ActionWait(1)); - } - - for(int i = 0; i < 12; i++) { - double r = i * Math.PI / 6; - scene6.add(new ActionSetBlock(12 + (int)(Math.cos(r) * 2.75F), 2 + (int)(Math.sin(r) * 2.75F), z, i == 3 && (z == 18 || z == 20) ? ModBlocks.hadron_power : ModBlocks.hadron_plating)); - if(z == 17 || z == 20) scene6.add(new ActionWait(1)); - } - - scene6.add(new ActionWait(1)); - } - - scene6.add(new ActionSetZoom(-1, 10)); - - // BEGIN CORNER SEGMENT - for(int x = 17; x <= 19; x++) { - for(int z = 23; z >= 21; z--) { - if(z == 23 && x == 19) continue; - scene6.add(new ActionSetBlock(x, 0, z, ModBlocks.hadron_plating)); - scene6.add(new ActionWait(1)); - } - } - - for(int x = 17; x <= 20; x++) { - for(int z = 24; z >= 21; z--) { - if(z == 24 && x >= 19) continue; - if(z >= 23 && x == 20) continue; - scene6.add(new ActionSetBlock(x, 1, z, z == 24 || x == 20 || (z == 23 && x == 19) ? ModBlocks.hadron_plating : ModBlocks.hadron_coil_neodymium)); - scene6.add(new ActionWait(1)); - } - } - - for(int x = 17; x <= 20; x++) { - for(int z = 24; z >= 21; z--) { - if(z == 24 && x >= 19) continue; - if(z >= 23 && x == 20) continue; - if(z == 21 && x == 18) continue; - if(z == 22 && x == 18) continue; - if(z == 22 && x == 17) continue; - if(z == 20 && x == 18) continue; - scene6.add(new ActionSetBlock(x, 2, z, z == 24 || x == 20 || (z == 23 && x == 19) ? ModBlocks.hadron_plating : ModBlocks.hadron_coil_neodymium)); - scene6.add(new ActionWait(1)); - } - } - - for(int x = 17; x <= 20; x++) { - for(int z = 24; z >= 21; z--) { - if(z == 24 && x >= 19) continue; - if(z >= 23 && x == 20) continue; - scene6.add(new ActionSetBlock(x, 3, z, z == 24 || x == 20 || (z == 23 && x == 19) ? ModBlocks.hadron_plating : ModBlocks.hadron_coil_neodymium)); - scene6.add(new ActionWait(1)); - } - } - - for(int x = 17; x <= 19; x++) { - for(int z = 23; z >= 21; z--) { - if(z == 23 && x == 19) continue; - scene6.add(new ActionSetBlock(x, 4, z, ModBlocks.hadron_plating)); - scene6.add(new ActionWait(1)); - } - } - // END CORNER SEGMENT - - for(int i = 0; i < 8; i++) { - double r = i * Math.PI / 4; - scene6.add(new ActionSetBlock(16, 2 + (int)(Math.sin(r) * 1.5F), 22 + (int)(Math.cos(r) * 1.5F), ModBlocks.hadron_coil_neodymium)); - scene6.add(new ActionWait(1)); - } - - for(int i = 0; i < 12; i++) { - double r = i * Math.PI / 6; - scene6.add(new ActionSetBlock(16, 2 + (int)(Math.sin(r) * 2.75F), 22 + (int)(Math.cos(r) * 2.75F), i == 3 ? ModBlocks.hadron_power : ModBlocks.hadron_plating)); - scene6.add(new ActionWait(1)); - } - - for(int i = 0; i < 8; i++) { - double r = i * Math.PI / 4; - scene6.add(new ActionSetBlock(15, 2 + (int)(Math.sin(r) * 1.5F), 22 + (int)(Math.cos(r) * 1.5F), ModBlocks.hadron_coil_neodymium)); - scene6.add(new ActionWait(1)); - } - - for(int i = 0; i < 12; i++) { - double r = i * Math.PI / 6; - scene6.add(new ActionSetBlock(15, 2 + (int)(Math.sin(r) * 2.75F), 22 + (int)(Math.cos(r) * 2.75F), ModBlocks.hadron_plating)); - scene6.add(new ActionWait(1)); - } - - for(int i = 0; i < 8; i++) { - double r = i * Math.PI / 4; - scene6.add(new ActionSetBlock(14, 2 + (int)(Math.sin(r) * 1.5F), 22 + (int)(Math.cos(r) * 1.5F), ModBlocks.hadron_coil_neodymium)); - scene6.add(new ActionWait(1)); - } - - for(int i = 0; i < 12; i++) { - double r = i * Math.PI / 6; - scene6.add(new ActionSetBlock(14, 2 + (int)(Math.sin(r) * 2.75F), 22 + (int)(Math.cos(r) * 2.75F), i == 3 ? ModBlocks.hadron_power : ModBlocks.hadron_plating)); - scene6.add(new ActionWait(1)); - } - - // BEGIN CORNER SEGMENT - for(int x = 11; x <= 13; x++) { - for(int z = 23; z >= 21; z--) { - if(z == 23 && x == 11) continue; - scene6.add(new ActionSetBlock(x, 0, z, ModBlocks.hadron_plating)); - scene6.add(new ActionWait(1)); - } - } - - for(int x = 10; x <= 13; x++) { - for(int z = 24; z >= 21; z--) { - if(z == 24 && x <= 11) continue; - if(z >= 23 && x == 10) continue; - scene6.add(new ActionSetBlock(x, 1, z, z == 24 || x == 10 || (z == 23 && x == 11) ? ModBlocks.hadron_plating : ModBlocks.hadron_coil_neodymium)); - scene6.add(new ActionWait(1)); - } - } - - for(int x = 10; x <= 13; x++) { - for(int z = 24; z >= 21; z--) { - if(z == 24 && x <= 11) continue; - if(z >= 23 && x == 10) continue; - if(z == 21 && x == 12) continue; - if(z == 22 && x == 12) continue; - if(z == 22 && x == 13) continue; - scene6.add(new ActionSetBlock(x, 2, z, z == 24 || x == 10 || (z == 23 && x == 11) ? ModBlocks.hadron_plating : ModBlocks.hadron_coil_neodymium)); - scene6.add(new ActionWait(1)); - } - } - - for(int x = 10; x <= 13; x++) { - for(int z = 24; z >= 21; z--) { - if(z == 24 && x <= 11) continue; - if(z >= 23 && x == 10) continue; - scene6.add(new ActionSetBlock(x, 3, z, z == 24 || x == 10 || (z == 23 && x == 11) ? ModBlocks.hadron_plating : ModBlocks.hadron_coil_neodymium)); - scene6.add(new ActionWait(1)); - } - } - - for(int x = 11; x <= 13; x++) { - for(int z = 23; z >= 21; z--) { - if(z == 23 && x == 11) continue; - scene6.add(new ActionSetBlock(x, 4, z, ModBlocks.hadron_plating)); - scene6.add(new ActionWait(1)); - } - } - // END CORNER SEGMENT - - scene6.add(new ActionWait(10)); - - scene6.add(new ActionCreateActor(17, new ActorFancyPanel(Minecraft.getMinecraft().fontRenderer, 0, -50, new Object[][] {{I18nUtil.resolveKey("cannery.hadron.14")}}, 200) - .setColors(colorCopper).setOrientation(Orientation.BOTTOM))); - - scene6.add(new ActionWait(100)); - scene6.add(new ActionRemoveActor(17)); - scene6.add(new ActionWait(10)); - - - - - // ADDENDUM SCENE: Schottky diodes - - - - // ADDENDUM SCENE: Cooling - - - script - .addScene(scene0) - .addScene(scene1) - .addScene(scene2) - .addScene(scene3) - .addScene(scene4) - .addScene(scene5) - .addScene(scene6); - - return script; - } - -} diff --git a/src/main/java/com/hbm/wiaj/cannery/CannerySchottky.java b/src/main/java/com/hbm/wiaj/cannery/CannerySchottky.java deleted file mode 100644 index caaabcac2..000000000 --- a/src/main/java/com/hbm/wiaj/cannery/CannerySchottky.java +++ /dev/null @@ -1,250 +0,0 @@ -package com.hbm.wiaj.cannery; - -import com.hbm.blocks.ModBlocks; -import com.hbm.items.ModItems; -import com.hbm.tileentity.machine.TileEntityHadronDiode; -import com.hbm.util.i18n.I18nUtil; -import com.hbm.wiaj.JarScene; -import com.hbm.wiaj.JarScript; -import com.hbm.wiaj.WorldInAJar; -import com.hbm.wiaj.actions.ActionCreateActor; -import com.hbm.wiaj.actions.ActionRemoveActor; -import com.hbm.wiaj.actions.ActionRotateBy; -import com.hbm.wiaj.actions.ActionSetBlock; -import com.hbm.wiaj.actions.ActionSetTile; -import com.hbm.wiaj.actions.ActionSetZoom; -import com.hbm.wiaj.actions.ActionWait; -import com.hbm.wiaj.actors.ActorFancyPanel; -import com.hbm.wiaj.actors.ActorFancyPanel.Orientation; - -import net.minecraft.client.Minecraft; -import net.minecraft.item.ItemStack; - -public class CannerySchottky extends CanneryBase { - - @Override - public ItemStack getIcon() { - return new ItemStack(ModBlocks.hadron_diode); - } - - @Override - public String getName() { - return "cannery.schottky"; - } - - @Override - public CanneryBase[] seeAlso() { - return new CanneryBase[] { - new CanneryHadron() - }; - } - - @Override - public JarScript createScript() { - WorldInAJar world = new WorldInAJar(5, 5, 5); - JarScript script = new JarScript(world); - - - // FIRST SCENE: Show and explain the diode - JarScene scene0 = new JarScene(script); - scene0.add(new ActionSetZoom(4, 0)); - - scene0.add(new ActionSetTile(2, 2, 2, new TileEntityHadronDiode())); - scene0.add(new ActionSetBlock(2, 2, 2, ModBlocks.hadron_diode)); - - scene0.add(new ActionCreateActor(1, new ActorFancyPanel(Minecraft.getMinecraft().fontRenderer, 0, -20, new Object[][] {{I18nUtil.resolveKey("cannery.schottky.0")}}, 200) - .setColors(colorCopper).setOrientation(Orientation.BOTTOM))); - - scene0.add(new ActionWait(100)); - scene0.add(new ActionRemoveActor(1)); - scene0.add(new ActionWait(5)); - - scene0.add(new ActionCreateActor(1, new ActorFancyPanel(Minecraft.getMinecraft().fontRenderer, 0, -20, new Object[][] {{I18nUtil.resolveKey("cannery.schottky.1")}}, 200) - .setColors(colorCopper).setOrientation(Orientation.BOTTOM))); - - scene0.add(new ActionWait(80)); - scene0.add(new ActionRemoveActor(1)); - scene0.add(new ActionWait(10)); - - scene0.add(new ActionCreateActor(2, new ActorFancyPanel(Minecraft.getMinecraft().fontRenderer, -14, 8, new Object[][] {{new ItemStack(ModItems.screwdriver)}}, 0) - .setColors(colorCopper).setOrientation(Orientation.RIGHT))); - - scene0.add(new ActionWait(20)); - scene0.add(new ActionRemoveActor(2)); - - scene0.add(new ActionSetTile(2, 2, 2, new TileEntityHadronDiode() {{ sides[2] = DiodeConfig.IN; }})); - - scene0.add(new ActionWait(10)); - - scene0.add(new ActionCreateActor(3, new ActorFancyPanel(Minecraft.getMinecraft().fontRenderer, -14, 8, new Object[][] {{I18nUtil.resolveKey("cannery.schottky.2")}}, 100) - .setColors(colorCopper).setOrientation(Orientation.RIGHT))); - - scene0.add(new ActionWait(60)); - scene0.add(new ActionRemoveActor(3)); - scene0.add(new ActionWait(10)); - - scene0.add(new ActionCreateActor(4, new ActorFancyPanel(Minecraft.getMinecraft().fontRenderer, 14, 8, new Object[][] {{new ItemStack(ModItems.screwdriver)}}, 0) - .setColors(colorCopper).setOrientation(Orientation.LEFT))); - - scene0.add(new ActionWait(10)); - scene0.add(new ActionRemoveActor(4)); - - scene0.add(new ActionSetTile(2, 2, 2, new TileEntityHadronDiode() {{ sides[2] = DiodeConfig.IN; sides[4] = DiodeConfig.IN; }})); - - scene0.add(new ActionWait(5)); - - scene0.add(new ActionCreateActor(5, new ActorFancyPanel(Minecraft.getMinecraft().fontRenderer, 14, 8, new Object[][] {{new ItemStack(ModItems.screwdriver)}}, 0) - .setColors(colorCopper).setOrientation(Orientation.LEFT))); - - scene0.add(new ActionWait(10)); - scene0.add(new ActionRemoveActor(5)); - - scene0.add(new ActionSetTile(2, 2, 2, new TileEntityHadronDiode() {{ sides[2] = DiodeConfig.IN; sides[4] = DiodeConfig.OUT; }})); - - scene0.add(new ActionWait(10)); - - scene0.add(new ActionCreateActor(6, new ActorFancyPanel(Minecraft.getMinecraft().fontRenderer, 14, 8, new Object[][] {{I18nUtil.resolveKey("cannery.schottky.3")}}, 100) - .setColors(colorCopper).setOrientation(Orientation.LEFT))); - - scene0.add(new ActionWait(60)); - scene0.add(new ActionRemoveActor(6)); - scene0.add(new ActionWait(10)); - - - // SECOND SCENE: Add another entrance and exit - JarScene scene1 = new JarScene(script); - scene1.add(new ActionSetZoom(4, 0)); - - scene1.add(new ActionRotateBy(180, 0, 10)); - - scene1.add(new ActionCreateActor(2, new ActorFancyPanel(Minecraft.getMinecraft().fontRenderer, -14, 8, new Object[][] {{new ItemStack(ModItems.screwdriver)}}, 0) - .setColors(colorCopper).setOrientation(Orientation.RIGHT))); - - scene1.add(new ActionWait(10)); - scene1.add(new ActionRemoveActor(2)); - - scene1.add(new ActionSetTile(2, 2, 2, new TileEntityHadronDiode() {{ sides[2] = DiodeConfig.IN; sides[4] = DiodeConfig.OUT; sides[3] = DiodeConfig.IN; }})); - - scene1.add(new ActionWait(10)); - - scene1.add(new ActionCreateActor(4, new ActorFancyPanel(Minecraft.getMinecraft().fontRenderer, 14, 8, new Object[][] {{new ItemStack(ModItems.screwdriver)}}, 0) - .setColors(colorCopper).setOrientation(Orientation.LEFT))); - - scene1.add(new ActionWait(10)); - scene1.add(new ActionRemoveActor(4)); - - scene1.add(new ActionSetTile(2, 2, 2, new TileEntityHadronDiode() {{ sides[2] = DiodeConfig.IN; sides[4] = DiodeConfig.OUT; sides[3] = DiodeConfig.IN; sides[5] = DiodeConfig.IN; }})); - - scene1.add(new ActionWait(5)); - - scene1.add(new ActionCreateActor(5, new ActorFancyPanel(Minecraft.getMinecraft().fontRenderer, 14, 8, new Object[][] {{new ItemStack(ModItems.screwdriver)}}, 0) - .setColors(colorCopper).setOrientation(Orientation.LEFT))); - - scene1.add(new ActionWait(10)); - scene1.add(new ActionRemoveActor(5)); - - scene1.add(new ActionSetTile(2, 2, 2, new TileEntityHadronDiode() {{ sides[2] = DiodeConfig.IN; sides[4] = DiodeConfig.OUT; sides[3] = DiodeConfig.IN; sides[5] = DiodeConfig.OUT; }})); - - scene1.add(new ActionWait(10)); - - scene1.add(new ActionRotateBy(-180, 0, 10)); - - scene1.add(new ActionCreateActor(1, new ActorFancyPanel(Minecraft.getMinecraft().fontRenderer, 0, -20, new Object[][] {{I18nUtil.resolveKey("cannery.schottky.4")}}, 200) - .setColors(colorCopper).setOrientation(Orientation.BOTTOM))); - - scene1.add(new ActionWait(100)); - scene1.add(new ActionRemoveActor(1)); - scene1.add(new ActionWait(10)); - - scene1.add(new ActionCreateActor(1, new ActorFancyPanel(Minecraft.getMinecraft().fontRenderer, 0, -20, new Object[][] {{I18nUtil.resolveKey("cannery.schottky.5")}}, 200) - .setColors(colorCopper).setOrientation(Orientation.BOTTOM))); - - scene1.add(new ActionWait(100)); - scene1.add(new ActionRemoveActor(1)); - scene1.add(new ActionWait(10)); - - scene1.add(new ActionCreateActor(1, new ActorFancyPanel(Minecraft.getMinecraft().fontRenderer, 0, -20, new Object[][] {{I18nUtil.resolveKey("cannery.schottky.6")}}, 200) - .setColors(colorCopper).setOrientation(Orientation.BOTTOM))); - - scene1.add(new ActionWait(100)); - scene1.add(new ActionRemoveActor(1)); - scene1.add(new ActionWait(10)); - - scene1.add(new ActionCreateActor(1, new ActorFancyPanel(Minecraft.getMinecraft().fontRenderer, 0, -20, new Object[][] {{I18nUtil.resolveKey("cannery.schottky.7")}}, 200) - .setColors(colorCopper).setOrientation(Orientation.BOTTOM))); - - scene1.add(new ActionWait(100)); - scene1.add(new ActionRemoveActor(1)); - scene1.add(new ActionWait(10)); - - scene1.add(new ActionCreateActor(1, new ActorFancyPanel(Minecraft.getMinecraft().fontRenderer, 0, -20, new Object[][] {{I18nUtil.resolveKey("cannery.schottky.8")}}, 200) - .setColors(colorCopper).setOrientation(Orientation.BOTTOM))); - - scene1.add(new ActionWait(100)); - scene1.add(new ActionRemoveActor(1)); - scene1.add(new ActionWait(10)); - - - - // THIRD SCENE: Correctly enclose the diode - JarScene scene2 = new JarScene(script); - scene2.add(new ActionSetZoom(4, 0)); - - scene2.add(new ActionSetZoom(-2, 10)); - - for(int x = 0; x < 5; x++) { - for(int z = 0; z < 5; z++) { - if((x == 0 || x == 4) && (z == 0 || z == 4)) continue; - scene2.add(new ActionSetBlock(x, 0, z, ModBlocks.hadron_plating)); - scene2.add(new ActionWait(1)); - } - } - - for(int x = 0; x < 5; x++) { - for(int z = 0; z < 5; z++) { - scene2.add(new ActionSetBlock(x, 1, z, (x == 0 || x == 4) && (z == 0 || z == 4) ? ModBlocks.hadron_plating : ModBlocks.hadron_coil_alloy)); - scene2.add(new ActionWait(1)); - } - } - - for(int x = 0; x < 5; x++) { - for(int z = 0; z < 5; z++) { - if(x == 2 || z == 2) continue; - scene2.add(new ActionSetBlock(x, 2, z, (x == 0 || x == 4) && (z == 0 || z == 4) ? ModBlocks.hadron_plating : ModBlocks.hadron_coil_alloy)); - scene2.add(new ActionWait(1)); - } - } - - scene2.add(new ActionCreateActor(1, new ActorFancyPanel(Minecraft.getMinecraft().fontRenderer, 0, -20, new Object[][] {{I18nUtil.resolveKey("cannery.schottky.9")}}, 200) - .setColors(colorCopper).setOrientation(Orientation.BOTTOM))); - - - scene2.add(new ActionRotateBy(360, 0, 100)); - scene2.add(new ActionRemoveActor(1)); - scene2.add(new ActionWait(10)); - - for(int x = 0; x < 5; x++) { - for(int z = 0; z < 5; z++) { - scene2.add(new ActionSetBlock(x, 3, z, (x == 0 || x == 4) && (z == 0 || z == 4) ? ModBlocks.hadron_plating : ModBlocks.hadron_coil_alloy)); - scene2.add(new ActionWait(1)); - } - } - - for(int x = 0; x < 5; x++) { - for(int z = 0; z < 5; z++) { - if((x == 0 || x == 4) && (z == 0 || z == 4)) continue; - scene2.add(new ActionSetBlock(x, 4, z, ModBlocks.hadron_plating)); - scene2.add(new ActionWait(1)); - } - } - - - script - .addScene(scene0) - .addScene(scene1) - .addScene(scene2); - - return script; - } - -} diff --git a/src/main/java/com/hbm/wiaj/cannery/Jars.java b/src/main/java/com/hbm/wiaj/cannery/Jars.java index 7355cdd5c..fbefe9d9d 100644 --- a/src/main/java/com/hbm/wiaj/cannery/Jars.java +++ b/src/main/java/com/hbm/wiaj/cannery/Jars.java @@ -23,8 +23,6 @@ public class Jars { canneries.put(new ComparableStack(ModBlocks.machine_silex), new CannerySILEX()); canneries.put(new ComparableStack(ModBlocks.foundry_channel), new CanneryFoundryChannel()); canneries.put(new ComparableStack(ModBlocks.machine_crucible), new CanneryCrucible()); - canneries.put(new ComparableStack(ModBlocks.hadron_core), new CanneryHadron()); - canneries.put(new ComparableStack(ModBlocks.hadron_diode), new CannerySchottky()); canneries.put(new ComparableStack(DictFrame.fromOne(ModItems.plant_item, EnumPlantType.MUSTARDWILLOW)), new CanneryWillow()); canneries.put(new ComparableStack(DictFrame.fromOne(ModBlocks.plant_flower, EnumFlowerType.CD0)), new CanneryWillow());