fusion reactor almost finished
@ -2029,6 +2029,8 @@ tile.brick_jungle.name=Enargitziegel
|
||||
tile.brick_jungle_cracked.name=Rissige Enargitziegel
|
||||
tile.brick_jungle_glyph.name=Enargit-Glyphenziegel
|
||||
tile.brick_jungle_lava.name=Magmatische Enargitziegel
|
||||
tile.brick_jungle_mystic.name=Arkane Enargitziegel
|
||||
tile.brick_jungle_ooze.name=Radioaktive Enargitziegel
|
||||
tile.brick_jungle_trap.name=Enargit-Falle
|
||||
tile.brick_light.name=Helle Ziegel
|
||||
tile.brick_obsidian.name=Obsidianziegel
|
||||
|
||||
@ -2029,6 +2029,8 @@ tile.brick_jungle.name=Enargite Bricks
|
||||
tile.brick_jungle_cracked.name=Cracked Enargite Bricks
|
||||
tile.brick_jungle_glyph.name=Enargite Glyph Bricks
|
||||
tile.brick_jungle_lava.name=Magmatic Enargite Bricks
|
||||
tile.brick_jungle_mystic.name=Arcane Enargite Bricks
|
||||
tile.brick_jungle_ooze.name=Radioactive Enargite Bricks
|
||||
tile.brick_jungle_trap.name=Trapped Enargite Bricks
|
||||
tile.brick_light.name=Light Bricks
|
||||
tile.brick_obsidian.name=Obsidian Bricks
|
||||
|
||||
@ -0,0 +1,5 @@
|
||||
{
|
||||
"animation": {
|
||||
"frametime": 4
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,5 @@
|
||||
{
|
||||
"animation": {
|
||||
"frametime": 4
|
||||
}
|
||||
}
|
||||
|
Before Width: | Height: | Size: 2.8 KiB After Width: | Height: | Size: 2.9 KiB |
|
Before Width: | Height: | Size: 148 B After Width: | Height: | Size: 283 B |
|
Before Width: | Height: | Size: 558 B After Width: | Height: | Size: 819 B |
|
Before Width: | Height: | Size: 309 B After Width: | Height: | Size: 549 B |
|
Before Width: | Height: | Size: 831 B After Width: | Height: | Size: 2.1 KiB |
@ -118,6 +118,7 @@ public class ModBlocks {
|
||||
public static Block block_lead;
|
||||
public static Block block_trinitite;
|
||||
public static Block block_waste;
|
||||
public static Block block_waste_painted;
|
||||
public static Block block_scrap;
|
||||
public static Block block_electrical_scrap;
|
||||
public static Block block_beryllium;
|
||||
@ -182,6 +183,7 @@ public class ModBlocks {
|
||||
public static Block brick_obsidian;
|
||||
public static Block brick_light;
|
||||
public static Block brick_compound;
|
||||
public static Block brick_asbestos;
|
||||
|
||||
public static Block cmb_brick;
|
||||
public static Block cmb_brick_reinforced;
|
||||
@ -207,6 +209,8 @@ public class ModBlocks {
|
||||
public static Block brick_jungle;
|
||||
public static Block brick_jungle_cracked;
|
||||
public static Block brick_jungle_lava;
|
||||
public static Block brick_jungle_ooze;
|
||||
public static Block brick_jungle_mystic;
|
||||
public static Block brick_jungle_trap;
|
||||
public static Block brick_jungle_glyph;
|
||||
|
||||
@ -894,6 +898,7 @@ public class ModBlocks {
|
||||
block_lead = new BlockGeneric(Material.iron).setBlockName("block_lead").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_lead");
|
||||
block_trinitite = new BlockOre(Material.iron, 3F, 35F).setBlockName("block_trinitite").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_trinitite");
|
||||
block_waste = new BlockOre(Material.iron, 5F, 60F).setBlockName("block_waste").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_waste");
|
||||
block_waste_painted = new BlockOre(Material.iron, 5F, 60F).setBlockName("block_waste_painted").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_waste_painted");
|
||||
block_scrap = new BlockFalling(Material.sand).setBlockName("block_scrap").setCreativeTab(MainRegistry.blockTab).setHardness(2.5F).setResistance(5.0F).setStepSound(Block.soundTypeGravel).setBlockTextureName(RefStrings.MODID + ":block_scrap");
|
||||
block_electrical_scrap = new BlockFalling(Material.iron).setBlockName("block_electrical_scrap").setCreativeTab(MainRegistry.blockTab).setHardness(2.5F).setResistance(5.0F).setStepSound(Block.soundTypeMetal).setBlockTextureName(RefStrings.MODID + ":electrical_scrap_alt2");
|
||||
block_beryllium = new BlockGeneric(Material.iron).setBlockName("block_beryllium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_beryllium");
|
||||
@ -960,6 +965,7 @@ public class ModBlocks {
|
||||
brick_compound = new BlockGeneric(Material.rock).setBlockName("brick_compound").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(10000.0F).setBlockTextureName(RefStrings.MODID + ":brick_compound");
|
||||
cmb_brick = new BlockGeneric(Material.rock).setBlockName("cmb_brick").setCreativeTab(MainRegistry.blockTab).setHardness(25.0F).setResistance(6000.0F).setBlockTextureName(RefStrings.MODID + ":cmb_brick");
|
||||
cmb_brick_reinforced = new BlockGeneric(Material.rock).setBlockName("cmb_brick_reinforced").setCreativeTab(MainRegistry.blockTab).setHardness(25.0F).setResistance(60000.0F).setBlockTextureName(RefStrings.MODID + ":cmb_brick_reinforced");
|
||||
brick_asbestos = new BlockGeneric(Material.rock).setBlockName("brick_asbestos").setCreativeTab(MainRegistry.blockTab).setResistance(1000.0F).setBlockTextureName(RefStrings.MODID + ":brick_asbestos");
|
||||
|
||||
tile_lab = new BlockGeneric(Material.rock).setBlockName("tile_lab").setStepSound(Block.soundTypeGlass).setCreativeTab(MainRegistry.blockTab).setHardness(1.0F).setResistance(20.0F).setBlockTextureName(RefStrings.MODID + ":tile_lab");
|
||||
tile_lab_cracked = new BlockGeneric(Material.rock).setBlockName("tile_lab_cracked").setStepSound(Block.soundTypeGlass).setCreativeTab(MainRegistry.blockTab).setHardness(1.0F).setResistance(20.0F).setBlockTextureName(RefStrings.MODID + ":tile_lab_cracked");
|
||||
@ -982,6 +988,8 @@ public class ModBlocks {
|
||||
brick_jungle = new BlockGeneric(Material.rock).setBlockName("brick_jungle").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(900.0F).setBlockTextureName(RefStrings.MODID + ":brick_jungle");
|
||||
brick_jungle_cracked = new BlockGeneric(Material.rock).setBlockName("brick_jungle_cracked").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(900.0F).setBlockTextureName(RefStrings.MODID + ":brick_jungle_cracked");
|
||||
brick_jungle_lava = new BlockGeneric(Material.rock).setBlockName("brick_jungle_lava").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(900.0F).setLightLevel(5F/15F).setBlockTextureName(RefStrings.MODID + ":brick_jungle_lava");
|
||||
brick_jungle_ooze = new BlockOre(Material.rock).setBlockName("brick_jungle_ooze").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(900.0F).setLightLevel(5F/15F).setBlockTextureName(RefStrings.MODID + ":brick_jungle_ooze");
|
||||
brick_jungle_mystic = new BlockOre(Material.rock).setBlockName("brick_jungle_mystic").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(900.0F).setLightLevel(5F/15F).setBlockTextureName(RefStrings.MODID + ":brick_jungle_mystic");
|
||||
brick_jungle_trap = new TrappedBrick(Material.rock).setBlockName("brick_jungle_trap").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(900.0F).setBlockTextureName(RefStrings.MODID + ":brick_jungle_trap");
|
||||
brick_jungle_glyph = new BlockGlyph(Material.rock).setBlockName("brick_jungle_glyph").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(900.0F);
|
||||
|
||||
@ -1548,6 +1556,7 @@ public class ModBlocks {
|
||||
GameRegistry.registerBlock(block_asbestos, block_asbestos.getUnlocalizedName());
|
||||
GameRegistry.registerBlock(block_trinitite, block_trinitite.getUnlocalizedName());
|
||||
GameRegistry.registerBlock(block_waste, block_waste.getUnlocalizedName());
|
||||
GameRegistry.registerBlock(block_waste_painted, block_waste_painted.getUnlocalizedName());
|
||||
GameRegistry.registerBlock(block_schrabidium, ItemBlockLore.class, block_schrabidium.getUnlocalizedName());
|
||||
GameRegistry.registerBlock(block_solinium, ItemBlockLore.class, block_solinium.getUnlocalizedName());
|
||||
GameRegistry.registerBlock(block_schrabidium_fuel, ItemBlockLore.class, block_schrabidium_fuel.getUnlocalizedName());
|
||||
@ -1602,6 +1611,7 @@ public class ModBlocks {
|
||||
GameRegistry.registerBlock(brick_obsidian, brick_obsidian.getUnlocalizedName());
|
||||
GameRegistry.registerBlock(brick_compound, brick_compound.getUnlocalizedName());
|
||||
GameRegistry.registerBlock(brick_light, brick_light.getUnlocalizedName());
|
||||
GameRegistry.registerBlock(brick_asbestos, brick_asbestos.getUnlocalizedName());
|
||||
|
||||
//CMB Building Elements
|
||||
GameRegistry.registerBlock(cmb_brick, cmb_brick.getUnlocalizedName());
|
||||
@ -1638,6 +1648,8 @@ public class ModBlocks {
|
||||
GameRegistry.registerBlock(brick_jungle, brick_jungle.getUnlocalizedName());
|
||||
GameRegistry.registerBlock(brick_jungle_cracked, brick_jungle_cracked.getUnlocalizedName());
|
||||
GameRegistry.registerBlock(brick_jungle_lava, brick_jungle_lava.getUnlocalizedName());
|
||||
GameRegistry.registerBlock(brick_jungle_ooze, brick_jungle_ooze.getUnlocalizedName());
|
||||
GameRegistry.registerBlock(brick_jungle_mystic, brick_jungle_mystic.getUnlocalizedName());
|
||||
GameRegistry.registerBlock(brick_jungle_trap, ItemTrapBlock.class, brick_jungle_trap.getUnlocalizedName());
|
||||
GameRegistry.registerBlock(brick_jungle_glyph, ItemGlyphBlock.class, brick_jungle_glyph.getUnlocalizedName());
|
||||
GameRegistry.registerBlock(tape_recorder, tape_recorder.getUnlocalizedName());
|
||||
|
||||
@ -49,8 +49,7 @@ public class BlockGlyph extends Block {
|
||||
@SideOnly(Side.CLIENT)
|
||||
public void getSubBlocks(Item p_149666_1_, CreativeTabs p_149666_2_, List p_149666_3_)
|
||||
{
|
||||
for (int i = 0; i < 16; ++i)
|
||||
{
|
||||
for (int i = 0; i < 16; ++i) {
|
||||
p_149666_3_.add(new ItemStack(p_149666_1_, 1, i));
|
||||
}
|
||||
}
|
||||
|
||||
@ -264,6 +264,14 @@ public class BlockOre extends Block {
|
||||
{
|
||||
((EntityLivingBase) entity).addPotionEffect(new PotionEffect(HbmPotion.radiation.id, 30 * 20, 5));
|
||||
}
|
||||
if (entity instanceof EntityLivingBase && this == ModBlocks.brick_jungle_ooze)
|
||||
{
|
||||
((EntityLivingBase) entity).addPotionEffect(new PotionEffect(HbmPotion.radiation.id, 15 * 20, 9));
|
||||
}
|
||||
if (entity instanceof EntityLivingBase && this == ModBlocks.brick_jungle_mystic)
|
||||
{
|
||||
((EntityLivingBase) entity).addPotionEffect(new PotionEffect(HbmPotion.taint.id, 15 * 20, 2));
|
||||
}
|
||||
|
||||
if(this == ModBlocks.block_meteor_molten)
|
||||
entity.setFire(5);
|
||||
|
||||
@ -1,13 +1,22 @@
|
||||
package com.hbm.blocks.generic;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import com.hbm.blocks.ModBlocks;
|
||||
import com.hbm.blocks.generic.TrappedBrick.Trap;
|
||||
import com.hbm.tileentity.deco.TileEntityTrappedBrick;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.BlockContainer;
|
||||
import net.minecraft.block.material.Material;
|
||||
import net.minecraft.creativetab.CreativeTabs;
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.init.Blocks;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.potion.Potion;
|
||||
import net.minecraft.potion.PotionEffect;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
@ -27,6 +36,14 @@ public class TrappedBrick extends BlockContainer {
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
public void getSubBlocks(Item item, CreativeTabs tab, List list) {
|
||||
|
||||
for (int i = 0; i < Trap.values().length; ++i) {
|
||||
list.add(new ItemStack(item, 1, i));
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onEntityWalking(World world, int x, int y, int z, Entity entity) {
|
||||
@ -44,6 +61,10 @@ public class TrappedBrick extends BlockContainer {
|
||||
if(world.getBlock(x, y + 1, z).isReplaceable(world, x, y + 1, z))
|
||||
world.setBlock(x, y + 1, z, Blocks.fire);
|
||||
break;
|
||||
case SPIKES:
|
||||
if(world.getBlock(x, y + 1, z).isReplaceable(world, x, y + 1, z))
|
||||
world.setBlock(x, y + 1, z, ModBlocks.barbed_wire);
|
||||
break;
|
||||
case MINE:
|
||||
world.createExplosion(null, x + 0.5, y + 1.5, z + 0.5, 1F, false);
|
||||
break;
|
||||
@ -51,6 +72,38 @@ public class TrappedBrick extends BlockContainer {
|
||||
if(world.getBlock(x, y + 1, z).isReplaceable(world, x, y + 1, z))
|
||||
world.setBlock(x, y + 1, z, Blocks.web);
|
||||
break;
|
||||
case RAD_CONVERSION:
|
||||
for(int a = - 3; a <= 3; a++) {
|
||||
for(int b = - 3; b <= 3; b++) {
|
||||
for(int c = - 3; c <= 3; c++) {
|
||||
|
||||
if(world.rand.nextBoolean())
|
||||
continue;
|
||||
|
||||
Block bl = world.getBlock(x + a, y + b, z + c);
|
||||
if(bl == ModBlocks.brick_jungle || bl == ModBlocks.brick_jungle_cracked || bl == ModBlocks.brick_jungle_lava) {
|
||||
world.setBlock(x + a, y + b, z + c, ModBlocks.brick_jungle_ooze);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
case MAGIC_CONVERSTION:
|
||||
for(int a = - 3; a <= 3; a++) {
|
||||
for(int b = - 3; b <= 3; b++) {
|
||||
for(int c = - 3; c <= 3; c++) {
|
||||
|
||||
if(world.rand.nextBoolean())
|
||||
continue;
|
||||
|
||||
Block bl = world.getBlock(x + a, y + b, z + c);
|
||||
if(bl == ModBlocks.brick_jungle || bl == ModBlocks.brick_jungle_cracked || bl == ModBlocks.brick_jungle_lava) {
|
||||
world.setBlock(x + a, y + b, z + c, ModBlocks.brick_jungle_mystic);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
case SLOWNESS:
|
||||
player.addPotionEffect(new PotionEffect(Potion.moveSlowdown.id, 300, 2));
|
||||
break;
|
||||
@ -94,7 +147,7 @@ public class TrappedBrick extends BlockContainer {
|
||||
|
||||
public static Trap get(int i) {
|
||||
|
||||
if(i < 0 || i >= Trap.values().length)
|
||||
if(i >= 0 && i < Trap.values().length)
|
||||
return Trap.values()[i];
|
||||
|
||||
return FIRE;
|
||||
|
||||
@ -3,6 +3,8 @@ package com.hbm.blocks.machine;
|
||||
import com.hbm.blocks.BlockDummyable;
|
||||
import com.hbm.blocks.ModBlocks;
|
||||
import com.hbm.main.MainRegistry;
|
||||
import com.hbm.tileentity.TileEntityProxyCombo;
|
||||
import com.hbm.tileentity.TileEntityProxyInventory;
|
||||
import com.hbm.tileentity.machine.TileEntityITER;
|
||||
import com.hbm.tileentity.machine.TileEntityITERStruct;
|
||||
|
||||
@ -13,7 +15,9 @@ import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.util.ChatComponentText;
|
||||
import net.minecraft.util.MathHelper;
|
||||
import net.minecraft.util.Vec3;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraftforge.common.util.ForgeDirection;
|
||||
|
||||
@ -28,6 +32,10 @@ public class MachineITER extends BlockDummyable {
|
||||
|
||||
if(meta >= 12)
|
||||
return new TileEntityITER();
|
||||
|
||||
if(meta >= 6)
|
||||
return new TileEntityProxyCombo(false, true, true);
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
@ -56,6 +64,7 @@ public class MachineITER extends BlockDummyable {
|
||||
}
|
||||
return true;
|
||||
} else {
|
||||
player.addChatComponentMessage(new ChatComponentText("" + world.getBlockMetadata(x, y, z)));
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@ -204,6 +213,17 @@ public class MachineITER extends BlockDummyable {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
this.makeExtra(world, x, y, z);
|
||||
this.makeExtra(world, x, y + 4, z);
|
||||
|
||||
Vec3 vec = Vec3.createVectorHelper(5.75, 0, 0);
|
||||
|
||||
for(int i = 0; i < 16; i++) {
|
||||
vec.rotateAroundY((float) (Math.PI / 8));
|
||||
this.makeExtra(world, x + (int)vec.xCoord, y, z + (int)vec.zCoord);
|
||||
this.makeExtra(world, x + (int)vec.xCoord, y + 4, z + (int)vec.zCoord);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@ -37,6 +37,9 @@ public class GUIITER extends GuiInfoContainer {
|
||||
iter.tanks[0].renderTankInfo(this, mouseX, mouseY, guiLeft + 26, guiTop + 54, 16, 52); //Water
|
||||
iter.tanks[1].renderTankInfo(this, mouseX, mouseY, guiLeft + 134, guiTop + 54, 16, 52); //Steam
|
||||
iter.plasma.renderTankInfo(this, mouseX, mouseY, guiLeft + 71, guiTop + 54, 34, 34); //Plasma
|
||||
|
||||
String text = "Magnets are " + ((iter.isOn && iter.power >= iter.powerReq) ? "ON" : "OFF");
|
||||
this.drawCustomInfoStat(mouseX, mouseY, guiLeft + 76, guiTop + 94, 24, 12, mouseX, mouseY, new String[] { text });
|
||||
}
|
||||
|
||||
protected void mouseClicked(int x, int y, int i) {
|
||||
@ -72,6 +75,9 @@ public class GUIITER extends GuiInfoContainer {
|
||||
|
||||
if(iter.getShield() >= iter.plasma.getTankType().temperature)
|
||||
drawTexturedModalRect(guiLeft + 97, guiTop + 17, 218, 0, 18, 18);
|
||||
|
||||
int i = (int)iter.getPowerScaled(34);
|
||||
drawTexturedModalRect(guiLeft + 71, guiTop + 108, 176, 25, i, 16);
|
||||
|
||||
for(int t = 0; t < 2; t++) {
|
||||
Minecraft.getMinecraft().getTextureManager().bindTexture(iter.tanks[t].getSheet());
|
||||
|
||||
@ -2,6 +2,8 @@ package com.hbm.items.block;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import com.hbm.blocks.generic.TrappedBrick.Trap;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.item.ItemBlock;
|
||||
@ -18,24 +20,7 @@ public class ItemTrapBlock extends ItemBlock {
|
||||
@Override
|
||||
public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean bool) {
|
||||
|
||||
switch(itemstack.getItemDamage()) {
|
||||
case 0: list.add("Hourglass"); break;
|
||||
case 1: list.add("Eye"); break;
|
||||
case 2: list.add("'Pillar'"); break;
|
||||
case 3: list.add("IOI"); break;
|
||||
case 4: list.add("Delta"); break;
|
||||
case 5: list.add("VTPC"); break;
|
||||
case 6: list.add("Cool S"); break;
|
||||
case 7: list.add("Trefoil"); break;
|
||||
case 8: list.add("Pony"); break;
|
||||
case 9: list.add("Sparkle"); break;
|
||||
case 10: list.add("PiP"); break;
|
||||
case 11: list.add("Triangles"); break;
|
||||
case 12: list.add("Linux Mint"); break;
|
||||
case 13: list.add("13"); break;
|
||||
case 14: list.add("Digamma"); break;
|
||||
case 15: list.add("Celestial Altar"); break;
|
||||
}
|
||||
list.add(Trap.get(itemstack.getItemDamage()).toString());
|
||||
}
|
||||
|
||||
public int getMetadata(int meta)
|
||||
|
||||
@ -69,6 +69,7 @@ public class CraftingManager {
|
||||
GameRegistry.addRecipe(new ItemStack(ModItems.nuclear_waste, 8), new Object[] { "B", 'B', ModBlocks.yellow_barrel });
|
||||
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gas_empty, 2), new Object[] { "S ", "AA", "AA", 'A', "plateSteel", 'S', "plateCopper" }));
|
||||
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.vitrified_barrel, 1), new Object[] { "LSL", "PWP", "LSL", 'L', "plateLead", 'S', Blocks.sand, 'P', "ingotPolymer", 'W', ModBlocks.block_waste }));
|
||||
GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModBlocks.block_waste_painted, 1), new Object[] { "dyeYellow", ModBlocks.block_waste }));
|
||||
|
||||
GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.block_aluminium), 1), new Object[] { "###", "###", "###", '#', ModItems.ingot_aluminium });
|
||||
GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.block_copper), 1), new Object[] { "###", "###", "###", '#', ModItems.ingot_copper });
|
||||
@ -157,6 +158,7 @@ public class CraftingManager {
|
||||
GameRegistry.addRecipe(new ItemStack(ModItems.ingot_lead, 9), new Object[] { "#", '#', Item.getItemFromBlock(ModBlocks.block_lead) });
|
||||
GameRegistry.addRecipe(new ItemStack(ModItems.trinitite, 9), new Object[] { "#", '#', Item.getItemFromBlock(ModBlocks.block_trinitite) });
|
||||
GameRegistry.addRecipe(new ItemStack(ModItems.nuclear_waste, 9), new Object[] { "#", '#', Item.getItemFromBlock(ModBlocks.block_waste) });
|
||||
GameRegistry.addRecipe(new ItemStack(ModItems.nuclear_waste, 9), new Object[] { "#", '#', Item.getItemFromBlock(ModBlocks.block_waste_painted) });
|
||||
GameRegistry.addRecipe(new ItemStack(ModItems.ingot_beryllium, 9), new Object[] { "#", '#', Item.getItemFromBlock(ModBlocks.block_beryllium) });
|
||||
GameRegistry.addRecipe(new ItemStack(ModItems.ingot_schrabidium, 9), new Object[] { "#", '#', Item.getItemFromBlock(ModBlocks.block_schrabidium) });
|
||||
GameRegistry.addRecipe(new ItemStack(ModItems.ingot_euphemium, 9), new Object[] { "#", '#', Item.getItemFromBlock(ModBlocks.block_euphemium) });
|
||||
@ -639,6 +641,7 @@ public class CraftingManager {
|
||||
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.blades_advanced_alloy, 1), new Object[] { " P ", "PIP", " P ", 'P', "plateAdvanced", 'I', "ingotAdvanced" }));
|
||||
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.blades_combine_steel, 1), new Object[] { " P ", "PIP", " P ", 'P', "plateCMBSteel", 'I', "ingotCMBSteel" }));
|
||||
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.blades_schrabidium, 1), new Object[] { " P ", "PIP", " P ", 'P', "plateSchrabidium", 'I', "ingotSchrabidium" }));
|
||||
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.blades_desh, 1), new Object[] { "NPN", "PBP", "NPN", 'N', "nuggetSchrabidium", 'P', ModItems.plate_desh, 'B', ModItems.blades_combine_steel }));
|
||||
|
||||
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.blades_aluminium, 1), new Object[] { "PIP", 'P', "plateAluminum", 'I', new ItemStack(ModItems.blades_aluminium, 1, OreDictionary.WILDCARD_VALUE) }));
|
||||
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.blades_gold, 1), new Object[] { "PIP", 'P', "plateGold", 'I', new ItemStack(ModItems.blades_gold, 1, OreDictionary.WILDCARD_VALUE) }));
|
||||
@ -673,6 +676,7 @@ public class CraftingManager {
|
||||
|
||||
GameRegistry.addRecipe(new ItemStack(ModBlocks.reinforced_stone, 4), new Object[] { "FBF", "BFB", "FBF", 'F', Blocks.cobblestone, 'B', Blocks.stone });
|
||||
GameRegistry.addRecipe(new ItemStack(ModBlocks.brick_light, 4), new Object[] { "FBF", "BFB", "FBF", 'F', Blocks.fence, 'B', Blocks.brick_block });
|
||||
GameRegistry.addRecipe(new ItemStack(ModBlocks.brick_asbestos, 2), new Object[] { " A ", "ABA", " A ", 'B', ModBlocks.brick_light, 'A', ModItems.ingot_asbestos });
|
||||
GameRegistry.addRecipe(new ItemStack(ModBlocks.concrete, 4), new Object[] { "CC", "CC", 'C', ModBlocks.concrete_smooth });
|
||||
GameRegistry.addRecipe(new ItemStack(ModBlocks.concrete_pillar, 8), new Object[] { "CBC", "CBC", "CBC", 'C', ModBlocks.concrete_smooth, 'B', Blocks.iron_bars });
|
||||
GameRegistry.addRecipe(new ItemStack(ModBlocks.brick_concrete, 4), new Object[] { " C ", "CBC", " C ", 'C', ModBlocks.concrete_smooth, 'B', Items.clay_ball });
|
||||
|
||||
@ -420,6 +420,7 @@ public class MainRegistry {
|
||||
GameRegistry.registerTileEntity(TileEntityITER.class, "tileentity_iter");
|
||||
GameRegistry.registerTileEntity(TileEntityMachinePlasmaHeater.class, "tileentity_plasma_heater");
|
||||
GameRegistry.registerTileEntity(TileEntityMachineFENSU.class, "tileentity_fensu");
|
||||
GameRegistry.registerTileEntity(TileEntityTrappedBrick.class, "tileentity_trapped_brick");
|
||||
|
||||
EntityRegistry.registerModEntity(EntityRocket.class, "entity_rocket", 0, this, 250, 1, true);
|
||||
EntityRegistry.registerModEntity(EntityNukeExplosion.class, "entity_nuke_explosion", 1, this, 250, 1, true);
|
||||
|
||||
@ -35,7 +35,7 @@ public class RenderITER extends TileEntitySpecialRenderer {
|
||||
ResourceManager.iter.renderPart("Torus");
|
||||
|
||||
GL11.glPushMatrix();
|
||||
GL11.glRotated(System.currentTimeMillis() / 5D % 360, 0, 1, 0);
|
||||
GL11.glRotated(iter.lastRotor + (iter.rotor - iter.lastRotor) * f, 0, 1, 0);
|
||||
bindTexture(ResourceManager.iter_solenoid);
|
||||
ResourceManager.iter.renderPart("Solenoid");
|
||||
GL11.glPopMatrix();
|
||||
|
||||
@ -1,14 +1,30 @@
|
||||
package com.hbm.tileentity.deco;
|
||||
|
||||
import com.hbm.blocks.generic.TrappedBrick.Trap;
|
||||
import com.hbm.blocks.generic.TrappedBrick.TrapType;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
import com.hbm.blocks.ModBlocks;
|
||||
import com.hbm.blocks.generic.TrappedBrick.Trap;
|
||||
import com.hbm.entity.projectile.EntityBulletBase;
|
||||
import com.hbm.entity.projectile.EntityRubble;
|
||||
import com.hbm.handler.BulletConfigSyncingUtil;
|
||||
import com.hbm.items.ModItems;
|
||||
|
||||
import net.minecraft.entity.monster.EntityCaveSpider;
|
||||
import net.minecraft.entity.monster.EntityZombie;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.entity.projectile.EntityArrow;
|
||||
import net.minecraft.init.Blocks;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.util.AxisAlignedBB;
|
||||
import net.minecraftforge.common.util.ForgeDirection;
|
||||
|
||||
public class TileEntityTrappedBrick extends TileEntity {
|
||||
|
||||
AxisAlignedBB detector = null;
|
||||
ForgeDirection dir = ForgeDirection.UNKNOWN;
|
||||
|
||||
@Override
|
||||
public void updateEntity() {
|
||||
@ -18,21 +34,145 @@ public class TileEntityTrappedBrick extends TileEntity {
|
||||
if(detector == null) {
|
||||
setDetector();
|
||||
}
|
||||
|
||||
List players = worldObj.getEntitiesWithinAABB(EntityPlayer.class, detector);
|
||||
|
||||
if(!players.isEmpty())
|
||||
trigger();
|
||||
}
|
||||
}
|
||||
|
||||
private void trigger() {
|
||||
|
||||
Trap trap = Trap.get(this.getBlockMetadata());
|
||||
|
||||
switch(trap) {
|
||||
case FALLING_ROCKS:
|
||||
for(int x = 0; x < 3; x++) {
|
||||
for(int z = 0; z < 3; z++) {
|
||||
EntityRubble rubble = new EntityRubble(worldObj, xCoord - 0.5 + x, yCoord - 0.5, zCoord - 0.5 + z);
|
||||
rubble.setMetaBasedOnBlock(ModBlocks.reinforced_stone, 0);
|
||||
worldObj.spawnEntityInWorld(rubble);
|
||||
}
|
||||
}
|
||||
break;
|
||||
case ARROW:
|
||||
EntityArrow arrow = new EntityArrow(worldObj);
|
||||
arrow.setPosition(xCoord + 0.5 + dir.offsetX, yCoord + 0.5, zCoord + 0.5 + dir.offsetZ);
|
||||
arrow.motionX = dir.offsetX;
|
||||
arrow.motionZ = dir.offsetZ;
|
||||
worldObj.spawnEntityInWorld(arrow);
|
||||
break;
|
||||
case FLAMING_ARROW:
|
||||
EntityArrow farrow = new EntityArrow(worldObj);
|
||||
farrow.setPosition(xCoord + 0.5 + dir.offsetX, yCoord + 0.5, zCoord + 0.5 + dir.offsetZ);
|
||||
farrow.motionX = dir.offsetX;
|
||||
farrow.motionZ = dir.offsetZ;
|
||||
farrow.setFire(60);
|
||||
worldObj.spawnEntityInWorld(farrow);
|
||||
break;
|
||||
case PILLAR:
|
||||
for(int i = 0; i < 3; i++)
|
||||
worldObj.setBlock(xCoord, yCoord - 1 - i, zCoord, ModBlocks.concrete_pillar);
|
||||
break;
|
||||
case POISON_DART:
|
||||
EntityBulletBase dart = new EntityBulletBase(worldObj, BulletConfigSyncingUtil.G20_CAUSTIC);
|
||||
dart.setPosition(xCoord + 0.5 + dir.offsetX, yCoord + 0.5, zCoord + 0.5 + dir.offsetZ);
|
||||
dart.motionX = dir.offsetX;
|
||||
dart.motionZ = dir.offsetZ;
|
||||
worldObj.spawnEntityInWorld(dart);
|
||||
break;
|
||||
case ZOMBIE:
|
||||
EntityZombie zombie = new EntityZombie(worldObj);
|
||||
zombie.setPosition(xCoord + 0.5, yCoord + 1, zCoord + 0.5);
|
||||
switch(worldObj.rand.nextInt(3)) {
|
||||
case 0: zombie.setCurrentItemOrArmor(0, new ItemStack(ModItems.chernobylsign)); break;
|
||||
case 1: zombie.setCurrentItemOrArmor(0, new ItemStack(ModItems.cobalt_sword)); break;
|
||||
case 2: zombie.setCurrentItemOrArmor(0, new ItemStack(ModItems.cmb_hoe)); break;
|
||||
}
|
||||
zombie.setEquipmentDropChance(0, 1.0F);
|
||||
worldObj.spawnEntityInWorld(zombie);
|
||||
break;
|
||||
case SPIDERS:
|
||||
for(int i = 0; i < 3; i++) {
|
||||
EntityCaveSpider spider = new EntityCaveSpider(worldObj);
|
||||
spider.setPosition(xCoord + 0.5, yCoord - 1, zCoord + 0.5);
|
||||
worldObj.spawnEntityInWorld(spider);
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
worldObj.playSoundEffect(xCoord + 0.5D, yCoord + 0.5D, zCoord + 0.5D, "random.click", 0.3F, 0.6F);
|
||||
worldObj.setBlock(xCoord, yCoord, zCoord, ModBlocks.brick_jungle);
|
||||
}
|
||||
|
||||
private void setDetector() {
|
||||
|
||||
Trap trap = Trap.get(this.getBlockMetadata());
|
||||
|
||||
switch(trap) {
|
||||
case FALLING_ROCKS: break;
|
||||
case ARROW: break;
|
||||
case FLAMING_ARROW: break;
|
||||
case PILLAR: break;
|
||||
case POISON_DART: break;
|
||||
case ZOMBIE: break;
|
||||
case SPIDERS: break;
|
||||
case FALLING_ROCKS:
|
||||
detector = AxisAlignedBB.getBoundingBox(xCoord - 1, yCoord - 3, zCoord - 1, xCoord + 2, yCoord, zCoord + 2);
|
||||
break;
|
||||
|
||||
case PILLAR:
|
||||
detector = AxisAlignedBB.getBoundingBox(xCoord + 0.2, yCoord - 3, zCoord + 0.2, xCoord + 0.8, yCoord, zCoord + 0.8);
|
||||
break;
|
||||
|
||||
case ARROW:
|
||||
case FLAMING_ARROW:
|
||||
case POISON_DART:
|
||||
setDetectorDirectional();
|
||||
break;
|
||||
|
||||
case ZOMBIE:
|
||||
detector = AxisAlignedBB.getBoundingBox(xCoord - 1, yCoord + 1, zCoord - 1, xCoord + 2, yCoord + 2, zCoord + 2);
|
||||
break;
|
||||
|
||||
case SPIDERS:
|
||||
detector = AxisAlignedBB.getBoundingBox(xCoord - 1, yCoord - 3, zCoord - 1, xCoord + 2, yCoord, zCoord + 2);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
private void setDetectorDirectional() {
|
||||
|
||||
List<ForgeDirection> dirs = new ArrayList() {{
|
||||
add(ForgeDirection.NORTH);
|
||||
add(ForgeDirection.SOUTH);
|
||||
add(ForgeDirection.EAST);
|
||||
add(ForgeDirection.WEST);
|
||||
}};
|
||||
|
||||
Collections.shuffle(dirs);
|
||||
|
||||
for(ForgeDirection dir : dirs) {
|
||||
|
||||
if(worldObj.getBlock(xCoord + dir.offsetX, yCoord, zCoord + dir.offsetZ) == Blocks.air) {
|
||||
|
||||
double minX = xCoord + 0.4;
|
||||
double minY = yCoord + 0.4;
|
||||
double minZ = zCoord + 0.4;
|
||||
double maxX = xCoord + 0.6;
|
||||
double maxY = yCoord + 0.6;
|
||||
double maxZ = zCoord + 0.6;
|
||||
|
||||
if(dir.offsetX > 0)
|
||||
maxX += 3;
|
||||
else if(dir.offsetX < 0)
|
||||
minX -= 3;
|
||||
|
||||
if(dir.offsetZ > 0)
|
||||
maxZ += 3;
|
||||
else if(dir.offsetZ < 0)
|
||||
minZ -= 3;
|
||||
|
||||
detector = AxisAlignedBB.getBoundingBox(minX, minY, minZ, maxX, maxY, maxZ);
|
||||
this.dir = dir;
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
detector = AxisAlignedBB.getBoundingBox(xCoord, yCoord, zCoord, xCoord + 1, yCoord + 1, zCoord + 1);
|
||||
}
|
||||
}
|
||||
|
||||
@ -15,10 +15,7 @@ import com.hbm.tileentity.TileEntityMachineBase;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.nbt.NBTTagCompound;
|
||||
import net.minecraft.nbt.NBTTagList;
|
||||
import net.minecraft.util.AxisAlignedBB;
|
||||
import net.minecraft.util.Vec3;
|
||||
|
||||
@ -79,6 +76,10 @@ public class TileEntityITER extends TileEntityMachineBase implements IConsumer,
|
||||
worldObj.newExplosion(null, xCoord + 0.5 + vec.xCoord, yCoord + 0.5 + worldObj.rand.nextGaussian() * 1.5D, zCoord + 0.5 + vec.zCoord, 2.5F, true, true);
|
||||
}
|
||||
|
||||
if(isOn && power >= powerReq) {
|
||||
power -= powerReq;
|
||||
}
|
||||
|
||||
/// END Processing part ///
|
||||
|
||||
/// START Notif packets ///
|
||||
@ -91,6 +92,19 @@ public class TileEntityITER extends TileEntityMachineBase implements IConsumer,
|
||||
data.setBoolean("isOn", isOn);
|
||||
data.setLong("power", power);
|
||||
this.networkPack(data, 250);
|
||||
} else {
|
||||
|
||||
this.lastRotor = this.rotor;
|
||||
|
||||
if(this.isOn && this.power >= this.powerReq) {
|
||||
|
||||
this.rotor += 15F;
|
||||
|
||||
if(this.rotor >= 360) {
|
||||
this.rotor -= 360;
|
||||
this.lastRotor -= 360;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -108,6 +122,10 @@ public class TileEntityITER extends TileEntityMachineBase implements IConsumer,
|
||||
}
|
||||
}
|
||||
|
||||
public long getPowerScaled(long i) {
|
||||
return (power * i) / maxPower;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setPower(long i) {
|
||||
this.power = i;
|
||||
@ -218,6 +236,8 @@ public class TileEntityITER extends TileEntityMachineBase implements IConsumer,
|
||||
@Override
|
||||
public void readFromNBT(NBTTagCompound nbt) {
|
||||
super.readFromNBT(nbt);
|
||||
|
||||
this.power = nbt.getLong("power");
|
||||
|
||||
tanks[0].readFromNBT(nbt, "water");
|
||||
tanks[1].readFromNBT(nbt, "steam");
|
||||
@ -227,6 +247,8 @@ public class TileEntityITER extends TileEntityMachineBase implements IConsumer,
|
||||
@Override
|
||||
public void writeToNBT(NBTTagCompound nbt) {
|
||||
super.writeToNBT(nbt);
|
||||
|
||||
nbt.setLong("power", this.power);
|
||||
|
||||
tanks[0].writeToNBT(nbt, "water");
|
||||
tanks[1].writeToNBT(nbt, "steam");
|
||||
|
||||
@ -21,7 +21,22 @@ public class CellularDungeonFactory {
|
||||
meteor.rooms.add(new TestDungeonRoom8(meteor));
|
||||
|
||||
jungle = new JungleDungeon(5, 5, 25, 25, 700, 6);
|
||||
jungle.rooms.add(new JungleDungeonRoom(jungle));
|
||||
for(int i = 0; i < 10; i++) jungle.rooms.add(new JungleDungeonRoom(jungle));
|
||||
jungle.rooms.add(new JungleDungeonRoomArrow(jungle));
|
||||
jungle.rooms.add(new JungleDungeonRoomArrowFire(jungle));
|
||||
jungle.rooms.add(new JungleDungeonRoomFire(jungle));
|
||||
jungle.rooms.add(new JungleDungeonRoomMagic(jungle));
|
||||
jungle.rooms.add(new JungleDungeonRoomMine(jungle));
|
||||
jungle.rooms.add(new JungleDungeonRoomPillar(jungle));
|
||||
jungle.rooms.add(new JungleDungeonRoomPoison(jungle));
|
||||
jungle.rooms.add(new JungleDungeonRoomRad(jungle));
|
||||
jungle.rooms.add(new JungleDungeonRoomRubble(jungle));
|
||||
jungle.rooms.add(new JungleDungeonRoomSlowness(jungle));
|
||||
jungle.rooms.add(new JungleDungeonRoomSpiders(jungle));
|
||||
jungle.rooms.add(new JungleDungeonRoomSpikes(jungle));
|
||||
jungle.rooms.add(new JungleDungeonRoomWeakness(jungle));
|
||||
jungle.rooms.add(new JungleDungeonRoomWeb(jungle));
|
||||
jungle.rooms.add(new JungleDungeonRoomZombie(jungle));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -0,0 +1,67 @@
|
||||
package com.hbm.world.generator.room;
|
||||
|
||||
import com.hbm.blocks.ModBlocks;
|
||||
import com.hbm.blocks.generic.TrappedBrick.Trap;
|
||||
import com.hbm.world.generator.CellularDungeon;
|
||||
import com.hbm.world.generator.TimedGenerator;
|
||||
import com.hbm.world.generator.TimedGenerator.ITimedJob;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
public class JungleDungeonRoomArrow extends JungleDungeonRoom {
|
||||
|
||||
public JungleDungeonRoomArrow(CellularDungeon parent) {
|
||||
super(parent);
|
||||
}
|
||||
|
||||
public void generateMain(final World world, final int x, final int y, final int z) {
|
||||
super.generateMain(world, x, y, z);
|
||||
|
||||
ITimedJob job = new ITimedJob() {
|
||||
|
||||
@Override
|
||||
public void work() {
|
||||
|
||||
ITimedJob job = new ITimedJob() {
|
||||
|
||||
@Override
|
||||
public void work() {
|
||||
|
||||
for(int i = 1; i < 4; i++) {
|
||||
Block bl = world.getBlock(x + parent.width / 2, y + i, z);
|
||||
if(bl == ModBlocks.brick_jungle || bl == ModBlocks.brick_jungle_cracked || bl == ModBlocks.brick_jungle_lava) {
|
||||
world.setBlock(x + parent.width / 2, y + i, z, ModBlocks.brick_jungle_trap, Trap.ARROW.ordinal(), 3);
|
||||
}
|
||||
}
|
||||
|
||||
for(int i = 1; i < 4; i++) {
|
||||
Block bl = world.getBlock(x + parent.width / 2, y + i, z + parent.width - 1);
|
||||
if(bl == ModBlocks.brick_jungle || bl == ModBlocks.brick_jungle_cracked || bl == ModBlocks.brick_jungle_lava) {
|
||||
world.setBlock(x + parent.width / 2, y + i, z + parent.width - 1, ModBlocks.brick_jungle_trap, Trap.ARROW.ordinal(), 3);
|
||||
}
|
||||
}
|
||||
|
||||
for(int i = 1; i < 4; i++) {
|
||||
Block bl = world.getBlock(x, y + i, z + parent.width / 2);
|
||||
if(bl == ModBlocks.brick_jungle || bl == ModBlocks.brick_jungle_cracked || bl == ModBlocks.brick_jungle_lava) {
|
||||
world.setBlock(x, y + i, z + parent.width / 2, ModBlocks.brick_jungle_trap, Trap.ARROW.ordinal(), 3);
|
||||
}
|
||||
}
|
||||
|
||||
for(int i = 1; i < 4; i++) {
|
||||
Block bl = world.getBlock(x + parent.width - 1, y + i, z + parent.width / 2);
|
||||
if(bl == ModBlocks.brick_jungle || bl == ModBlocks.brick_jungle_cracked || bl == ModBlocks.brick_jungle_lava) {
|
||||
world.setBlock(x + parent.width - 1, y + i, z + parent.width / 2, ModBlocks.brick_jungle_trap, Trap.ARROW.ordinal(), 3);
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
TimedGenerator.addOp(world, job);
|
||||
}
|
||||
};
|
||||
|
||||
TimedGenerator.addOp(world, job);
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,61 @@
|
||||
package com.hbm.world.generator.room;
|
||||
|
||||
import com.hbm.blocks.ModBlocks;
|
||||
import com.hbm.blocks.generic.TrappedBrick.Trap;
|
||||
import com.hbm.world.generator.CellularDungeon;
|
||||
import com.hbm.world.generator.TimedGenerator;
|
||||
import com.hbm.world.generator.TimedGenerator.ITimedJob;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
public class JungleDungeonRoomArrowFire extends JungleDungeonRoom {
|
||||
|
||||
public JungleDungeonRoomArrowFire(CellularDungeon parent) {
|
||||
super(parent);
|
||||
}
|
||||
|
||||
public void generateMain(final World world, final int x, final int y, final int z) {
|
||||
super.generateMain(world, x, y, z);
|
||||
|
||||
ITimedJob job = new ITimedJob() {
|
||||
|
||||
@Override
|
||||
public void work() {
|
||||
|
||||
ITimedJob job = new ITimedJob() {
|
||||
|
||||
@Override
|
||||
public void work() {
|
||||
|
||||
Block bl;
|
||||
|
||||
bl = world.getBlock(x + parent.width / 2, y + 2, z);
|
||||
if(bl == ModBlocks.brick_jungle || bl == ModBlocks.brick_jungle_cracked || bl == ModBlocks.brick_jungle_lava) {
|
||||
world.setBlock(x + parent.width / 2, y + 2, z, ModBlocks.brick_jungle_trap, Trap.FLAMING_ARROW.ordinal(), 3);
|
||||
}
|
||||
|
||||
bl = world.getBlock(x + parent.width / 2, y + 2, z + parent.width - 1);
|
||||
if(bl == ModBlocks.brick_jungle || bl == ModBlocks.brick_jungle_cracked || bl == ModBlocks.brick_jungle_lava) {
|
||||
world.setBlock(x + parent.width / 2, y + 2, z + parent.width - 1, ModBlocks.brick_jungle_trap, Trap.FLAMING_ARROW.ordinal(), 3);
|
||||
}
|
||||
|
||||
bl = world.getBlock(x, y + 2, z + parent.width / 2);
|
||||
if(bl == ModBlocks.brick_jungle || bl == ModBlocks.brick_jungle_cracked || bl == ModBlocks.brick_jungle_lava) {
|
||||
world.setBlock(x, y + 2, z + parent.width / 2, ModBlocks.brick_jungle_trap, Trap.FLAMING_ARROW.ordinal(), 3);
|
||||
}
|
||||
|
||||
bl = world.getBlock(x + parent.width - 1, y + 2, z + parent.width / 2);
|
||||
if(bl == ModBlocks.brick_jungle || bl == ModBlocks.brick_jungle_cracked || bl == ModBlocks.brick_jungle_lava) {
|
||||
world.setBlock(x + parent.width - 1, y + 2, z + parent.width / 2, ModBlocks.brick_jungle_trap, Trap.FLAMING_ARROW.ordinal(), 3);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
TimedGenerator.addOp(world, job);
|
||||
}
|
||||
};
|
||||
|
||||
TimedGenerator.addOp(world, job);
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,44 @@
|
||||
package com.hbm.world.generator.room;
|
||||
|
||||
import com.hbm.blocks.ModBlocks;
|
||||
import com.hbm.blocks.generic.TrappedBrick.Trap;
|
||||
import com.hbm.world.generator.CellularDungeon;
|
||||
import com.hbm.world.generator.TimedGenerator;
|
||||
import com.hbm.world.generator.TimedGenerator.ITimedJob;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
public class JungleDungeonRoomFire extends JungleDungeonRoom {
|
||||
|
||||
public JungleDungeonRoomFire(CellularDungeon parent) {
|
||||
super(parent);
|
||||
}
|
||||
|
||||
public void generateMain(final World world, final int x, final int y, final int z) {
|
||||
super.generateMain(world, x, y, z);
|
||||
|
||||
ITimedJob job = new ITimedJob() {
|
||||
|
||||
@Override
|
||||
public void work() {
|
||||
|
||||
for(int a = 0; a < 3; a++) {
|
||||
for(int b = 0; b < 3; b++) {
|
||||
|
||||
if(a == 1 && b == 1)
|
||||
continue;
|
||||
|
||||
Block bl = world.getBlock(x + 1 + a, y, z + 1 + b);
|
||||
|
||||
if(bl == ModBlocks.brick_jungle || bl == ModBlocks.brick_jungle_cracked || bl == ModBlocks.brick_jungle_lava || bl == ModBlocks.brick_jungle_trap) {
|
||||
world.setBlock(x + 1 + a, y, z + 1 + b, ModBlocks.brick_jungle_trap, Trap.FIRE.ordinal(), 3);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
TimedGenerator.addOp(world, job);
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,38 @@
|
||||
package com.hbm.world.generator.room;
|
||||
|
||||
import com.hbm.blocks.ModBlocks;
|
||||
import com.hbm.blocks.generic.TrappedBrick.Trap;
|
||||
import com.hbm.world.generator.CellularDungeon;
|
||||
import com.hbm.world.generator.TimedGenerator;
|
||||
import com.hbm.world.generator.TimedGenerator.ITimedJob;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
public class JungleDungeonRoomMagic extends JungleDungeonRoom {
|
||||
|
||||
public JungleDungeonRoomMagic(CellularDungeon parent) {
|
||||
super(parent);
|
||||
}
|
||||
|
||||
public void generateMain(final World world, final int x, final int y, final int z) {
|
||||
super.generateMain(world, x, y, z);
|
||||
|
||||
ITimedJob job = new ITimedJob() {
|
||||
|
||||
@Override
|
||||
public void work() {
|
||||
|
||||
int ix = world.rand.nextInt(3) + 1;
|
||||
int iz = world.rand.nextInt(3) + 1;
|
||||
|
||||
Block bl = world.getBlock(x + ix, y, z + iz);
|
||||
if(bl == ModBlocks.brick_jungle || bl == ModBlocks.brick_jungle_cracked || bl == ModBlocks.brick_jungle_lava) {
|
||||
world.setBlock(x + ix, y, z + iz, ModBlocks.brick_jungle_trap, Trap.MAGIC_CONVERSTION.ordinal(), 3);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
TimedGenerator.addOp(world, job);
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,43 @@
|
||||
package com.hbm.world.generator.room;
|
||||
|
||||
import com.hbm.blocks.ModBlocks;
|
||||
import com.hbm.blocks.generic.TrappedBrick.Trap;
|
||||
import com.hbm.world.generator.CellularDungeon;
|
||||
import com.hbm.world.generator.TimedGenerator;
|
||||
import com.hbm.world.generator.TimedGenerator.ITimedJob;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
public class JungleDungeonRoomMine extends JungleDungeonRoom {
|
||||
|
||||
public JungleDungeonRoomMine(CellularDungeon parent) {
|
||||
super(parent);
|
||||
}
|
||||
|
||||
public void generateMain(final World world, final int x, final int y, final int z) {
|
||||
super.generateMain(world, x, y, z);
|
||||
|
||||
ITimedJob job = new ITimedJob() {
|
||||
|
||||
@Override
|
||||
public void work() {
|
||||
|
||||
|
||||
for(int a = 1; a < 4; a++) {
|
||||
for(int b = 1; b < 4; b++) {
|
||||
|
||||
if(world.rand.nextInt(3) == 0) {
|
||||
Block bl = world.getBlock(x + a, y, z + b);
|
||||
if(bl == ModBlocks.brick_jungle || bl == ModBlocks.brick_jungle_cracked || bl == ModBlocks.brick_jungle_lava) {
|
||||
world.setBlock(x + a, y, z + b, ModBlocks.brick_jungle_trap, Trap.MINE.ordinal(), 3);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
TimedGenerator.addOp(world, job);
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,44 @@
|
||||
package com.hbm.world.generator.room;
|
||||
|
||||
import com.hbm.blocks.ModBlocks;
|
||||
import com.hbm.blocks.generic.TrappedBrick.Trap;
|
||||
import com.hbm.world.generator.CellularDungeon;
|
||||
import com.hbm.world.generator.TimedGenerator;
|
||||
import com.hbm.world.generator.TimedGenerator.ITimedJob;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
public class JungleDungeonRoomPillar extends JungleDungeonRoom {
|
||||
|
||||
public JungleDungeonRoomPillar(CellularDungeon parent) {
|
||||
super(parent);
|
||||
}
|
||||
|
||||
public void generateMain(final World world, final int x, final int y, final int z) {
|
||||
super.generateMain(world, x, y, z);
|
||||
|
||||
ITimedJob job = new ITimedJob() {
|
||||
|
||||
@Override
|
||||
public void work() {
|
||||
|
||||
for(int a = 0; a < 3; a++) {
|
||||
for(int b = 0; b < 3; b++) {
|
||||
|
||||
if(a == 1 && b == 1)
|
||||
continue;
|
||||
|
||||
Block bl = world.getBlock(x + 1 + a, y + 4, z + 1 + b);
|
||||
|
||||
if(bl == ModBlocks.brick_jungle || bl == ModBlocks.brick_jungle_cracked || bl == ModBlocks.brick_jungle_lava || bl == ModBlocks.brick_jungle_trap) {
|
||||
world.setBlock(x + 1 + a, y + 4, z + 1 + b, ModBlocks.brick_jungle_trap, Trap.PILLAR.ordinal(), 3);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
TimedGenerator.addOp(world, job);
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,67 @@
|
||||
package com.hbm.world.generator.room;
|
||||
|
||||
import com.hbm.blocks.ModBlocks;
|
||||
import com.hbm.blocks.generic.TrappedBrick.Trap;
|
||||
import com.hbm.world.generator.CellularDungeon;
|
||||
import com.hbm.world.generator.TimedGenerator;
|
||||
import com.hbm.world.generator.TimedGenerator.ITimedJob;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
public class JungleDungeonRoomPoison extends JungleDungeonRoom {
|
||||
|
||||
public JungleDungeonRoomPoison(CellularDungeon parent) {
|
||||
super(parent);
|
||||
}
|
||||
|
||||
public void generateMain(final World world, final int x, final int y, final int z) {
|
||||
super.generateMain(world, x, y, z);
|
||||
|
||||
ITimedJob job = new ITimedJob() {
|
||||
|
||||
@Override
|
||||
public void work() {
|
||||
|
||||
ITimedJob job = new ITimedJob() {
|
||||
|
||||
@Override
|
||||
public void work() {
|
||||
|
||||
for(int i = 1; i < 4; i++) {
|
||||
Block bl = world.getBlock(x, y + 2, z + i);
|
||||
if(bl == ModBlocks.brick_jungle || bl == ModBlocks.brick_jungle_cracked || bl == ModBlocks.brick_jungle_lava) {
|
||||
world.setBlock(x, y + 2, z + i, ModBlocks.brick_jungle_trap, Trap.POISON_DART.ordinal(), 3);
|
||||
}
|
||||
}
|
||||
|
||||
for(int i = 1; i < 4; i++) {
|
||||
Block bl = world.getBlock(x + parent.width - 1, y + 2, z + i);
|
||||
if(bl == ModBlocks.brick_jungle || bl == ModBlocks.brick_jungle_cracked || bl == ModBlocks.brick_jungle_lava) {
|
||||
world.setBlock(x + parent.width - 1, y + 2, z + i, ModBlocks.brick_jungle_trap, Trap.POISON_DART.ordinal(), 3);
|
||||
}
|
||||
}
|
||||
|
||||
for(int i = 1; i < 4; i++) {
|
||||
Block bl = world.getBlock(x + i, y + 2, z);
|
||||
if(bl == ModBlocks.brick_jungle || bl == ModBlocks.brick_jungle_cracked || bl == ModBlocks.brick_jungle_lava) {
|
||||
world.setBlock(x + i, y + 2, z, ModBlocks.brick_jungle_trap, Trap.POISON_DART.ordinal(), 3);
|
||||
}
|
||||
}
|
||||
|
||||
for(int i = 1; i < 4; i++) {
|
||||
Block bl = world.getBlock(x + i, y + 2, z + parent.width - 1);
|
||||
if(bl == ModBlocks.brick_jungle || bl == ModBlocks.brick_jungle_cracked || bl == ModBlocks.brick_jungle_lava) {
|
||||
world.setBlock(x + i, y + 2, z + parent.width - 1, ModBlocks.brick_jungle_trap, Trap.POISON_DART.ordinal(), 3);
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
TimedGenerator.addOp(world, job);
|
||||
}
|
||||
};
|
||||
|
||||
TimedGenerator.addOp(world, job);
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,38 @@
|
||||
package com.hbm.world.generator.room;
|
||||
|
||||
import com.hbm.blocks.ModBlocks;
|
||||
import com.hbm.blocks.generic.TrappedBrick.Trap;
|
||||
import com.hbm.world.generator.CellularDungeon;
|
||||
import com.hbm.world.generator.TimedGenerator;
|
||||
import com.hbm.world.generator.TimedGenerator.ITimedJob;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
public class JungleDungeonRoomRad extends JungleDungeonRoom {
|
||||
|
||||
public JungleDungeonRoomRad(CellularDungeon parent) {
|
||||
super(parent);
|
||||
}
|
||||
|
||||
public void generateMain(final World world, final int x, final int y, final int z) {
|
||||
super.generateMain(world, x, y, z);
|
||||
|
||||
ITimedJob job = new ITimedJob() {
|
||||
|
||||
@Override
|
||||
public void work() {
|
||||
|
||||
int ix = world.rand.nextInt(3) + 1;
|
||||
int iz = world.rand.nextInt(3) + 1;
|
||||
|
||||
Block bl = world.getBlock(x + ix, y, z + iz);
|
||||
if(bl == ModBlocks.brick_jungle || bl == ModBlocks.brick_jungle_cracked || bl == ModBlocks.brick_jungle_lava) {
|
||||
world.setBlock(x + ix, y, z + iz, ModBlocks.brick_jungle_trap, Trap.RAD_CONVERSION.ordinal(), 3);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
TimedGenerator.addOp(world, job);
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,35 @@
|
||||
package com.hbm.world.generator.room;
|
||||
|
||||
import com.hbm.blocks.ModBlocks;
|
||||
import com.hbm.blocks.generic.TrappedBrick.Trap;
|
||||
import com.hbm.world.generator.CellularDungeon;
|
||||
import com.hbm.world.generator.TimedGenerator;
|
||||
import com.hbm.world.generator.TimedGenerator.ITimedJob;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
public class JungleDungeonRoomRubble extends JungleDungeonRoom {
|
||||
|
||||
public JungleDungeonRoomRubble(CellularDungeon parent) {
|
||||
super(parent);
|
||||
}
|
||||
|
||||
public void generateMain(final World world, final int x, final int y, final int z) {
|
||||
super.generateMain(world, x, y, z);
|
||||
|
||||
ITimedJob job = new ITimedJob() {
|
||||
|
||||
@Override
|
||||
public void work() {
|
||||
|
||||
Block bl = world.getBlock(x + 2, y + 4, z + 2);
|
||||
if(bl == ModBlocks.brick_jungle || bl == ModBlocks.brick_jungle_cracked || bl == ModBlocks.brick_jungle_lava) {
|
||||
world.setBlock(x + 2, y + 4, z + 2, ModBlocks.brick_jungle_trap, Trap.FALLING_ROCKS.ordinal(), 3);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
TimedGenerator.addOp(world, job);
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,43 @@
|
||||
package com.hbm.world.generator.room;
|
||||
|
||||
import com.hbm.blocks.ModBlocks;
|
||||
import com.hbm.blocks.generic.TrappedBrick.Trap;
|
||||
import com.hbm.world.generator.CellularDungeon;
|
||||
import com.hbm.world.generator.TimedGenerator;
|
||||
import com.hbm.world.generator.TimedGenerator.ITimedJob;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
public class JungleDungeonRoomSlowness extends JungleDungeonRoom {
|
||||
|
||||
public JungleDungeonRoomSlowness(CellularDungeon parent) {
|
||||
super(parent);
|
||||
}
|
||||
|
||||
public void generateMain(final World world, final int x, final int y, final int z) {
|
||||
super.generateMain(world, x, y, z);
|
||||
|
||||
ITimedJob job = new ITimedJob() {
|
||||
|
||||
@Override
|
||||
public void work() {
|
||||
|
||||
|
||||
for(int a = 1; a < 4; a++) {
|
||||
for(int b = 1; b < 4; b++) {
|
||||
|
||||
if(world.rand.nextInt(2) == 0) {
|
||||
Block bl = world.getBlock(x + a, y, z + b);
|
||||
if(bl == ModBlocks.brick_jungle || bl == ModBlocks.brick_jungle_cracked || bl == ModBlocks.brick_jungle_lava) {
|
||||
world.setBlock(x + a, y, z + b, ModBlocks.brick_jungle_trap, Trap.SLOWNESS.ordinal(), 3);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
TimedGenerator.addOp(world, job);
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,35 @@
|
||||
package com.hbm.world.generator.room;
|
||||
|
||||
import com.hbm.blocks.ModBlocks;
|
||||
import com.hbm.blocks.generic.TrappedBrick.Trap;
|
||||
import com.hbm.world.generator.CellularDungeon;
|
||||
import com.hbm.world.generator.TimedGenerator;
|
||||
import com.hbm.world.generator.TimedGenerator.ITimedJob;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
public class JungleDungeonRoomSpiders extends JungleDungeonRoom {
|
||||
|
||||
public JungleDungeonRoomSpiders(CellularDungeon parent) {
|
||||
super(parent);
|
||||
}
|
||||
|
||||
public void generateMain(final World world, final int x, final int y, final int z) {
|
||||
super.generateMain(world, x, y, z);
|
||||
|
||||
ITimedJob job = new ITimedJob() {
|
||||
|
||||
@Override
|
||||
public void work() {
|
||||
|
||||
Block bl = world.getBlock(x + 2, y + 4, z + 2);
|
||||
if(bl == ModBlocks.brick_jungle || bl == ModBlocks.brick_jungle_cracked || bl == ModBlocks.brick_jungle_lava) {
|
||||
world.setBlock(x + 2, y + 4, z + 2, ModBlocks.brick_jungle_trap, Trap.SPIDERS.ordinal(), 3);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
TimedGenerator.addOp(world, job);
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,35 @@
|
||||
package com.hbm.world.generator.room;
|
||||
|
||||
import com.hbm.blocks.ModBlocks;
|
||||
import com.hbm.blocks.generic.TrappedBrick.Trap;
|
||||
import com.hbm.world.generator.CellularDungeon;
|
||||
import com.hbm.world.generator.TimedGenerator;
|
||||
import com.hbm.world.generator.TimedGenerator.ITimedJob;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
public class JungleDungeonRoomSpikes extends JungleDungeonRoom {
|
||||
|
||||
public JungleDungeonRoomSpikes(CellularDungeon parent) {
|
||||
super(parent);
|
||||
}
|
||||
|
||||
public void generateMain(final World world, final int x, final int y, final int z) {
|
||||
super.generateMain(world, x, y, z);
|
||||
|
||||
ITimedJob job = new ITimedJob() {
|
||||
|
||||
@Override
|
||||
public void work() {
|
||||
|
||||
Block bl = world.getBlock(x + 2, y, z + 2);
|
||||
if(bl == ModBlocks.brick_jungle || bl == ModBlocks.brick_jungle_cracked || bl == ModBlocks.brick_jungle_lava) {
|
||||
world.setBlock(x + 2, y, z + 2, ModBlocks.brick_jungle_trap, Trap.SPIKES.ordinal(), 3);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
TimedGenerator.addOp(world, job);
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,43 @@
|
||||
package com.hbm.world.generator.room;
|
||||
|
||||
import com.hbm.blocks.ModBlocks;
|
||||
import com.hbm.blocks.generic.TrappedBrick.Trap;
|
||||
import com.hbm.world.generator.CellularDungeon;
|
||||
import com.hbm.world.generator.TimedGenerator;
|
||||
import com.hbm.world.generator.TimedGenerator.ITimedJob;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
public class JungleDungeonRoomWeakness extends JungleDungeonRoom {
|
||||
|
||||
public JungleDungeonRoomWeakness(CellularDungeon parent) {
|
||||
super(parent);
|
||||
}
|
||||
|
||||
public void generateMain(final World world, final int x, final int y, final int z) {
|
||||
super.generateMain(world, x, y, z);
|
||||
|
||||
ITimedJob job = new ITimedJob() {
|
||||
|
||||
@Override
|
||||
public void work() {
|
||||
|
||||
|
||||
for(int a = 1; a < 4; a++) {
|
||||
for(int b = 1; b < 4; b++) {
|
||||
|
||||
if(world.rand.nextInt(2) == 0) {
|
||||
Block bl = world.getBlock(x + a, y, z + b);
|
||||
if(bl == ModBlocks.brick_jungle || bl == ModBlocks.brick_jungle_cracked || bl == ModBlocks.brick_jungle_lava) {
|
||||
world.setBlock(x + a, y, z + b, ModBlocks.brick_jungle_trap, Trap.WEAKNESS.ordinal(), 3);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
TimedGenerator.addOp(world, job);
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,43 @@
|
||||
package com.hbm.world.generator.room;
|
||||
|
||||
import com.hbm.blocks.ModBlocks;
|
||||
import com.hbm.blocks.generic.TrappedBrick.Trap;
|
||||
import com.hbm.world.generator.CellularDungeon;
|
||||
import com.hbm.world.generator.TimedGenerator;
|
||||
import com.hbm.world.generator.TimedGenerator.ITimedJob;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
public class JungleDungeonRoomWeb extends JungleDungeonRoom {
|
||||
|
||||
public JungleDungeonRoomWeb(CellularDungeon parent) {
|
||||
super(parent);
|
||||
}
|
||||
|
||||
public void generateMain(final World world, final int x, final int y, final int z) {
|
||||
super.generateMain(world, x, y, z);
|
||||
|
||||
ITimedJob job = new ITimedJob() {
|
||||
|
||||
@Override
|
||||
public void work() {
|
||||
|
||||
|
||||
for(int a = 1; a < 4; a++) {
|
||||
for(int b = 1; b < 4; b++) {
|
||||
|
||||
if(world.rand.nextInt(3) == 0) {
|
||||
Block bl = world.getBlock(x + a, y, z + b);
|
||||
if(bl == ModBlocks.brick_jungle || bl == ModBlocks.brick_jungle_cracked || bl == ModBlocks.brick_jungle_lava) {
|
||||
world.setBlock(x + a, y, z + b, ModBlocks.brick_jungle_trap, Trap.WEB.ordinal(), 3);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
TimedGenerator.addOp(world, job);
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,35 @@
|
||||
package com.hbm.world.generator.room;
|
||||
|
||||
import com.hbm.blocks.ModBlocks;
|
||||
import com.hbm.blocks.generic.TrappedBrick.Trap;
|
||||
import com.hbm.world.generator.CellularDungeon;
|
||||
import com.hbm.world.generator.TimedGenerator;
|
||||
import com.hbm.world.generator.TimedGenerator.ITimedJob;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
public class JungleDungeonRoomZombie extends JungleDungeonRoom {
|
||||
|
||||
public JungleDungeonRoomZombie(CellularDungeon parent) {
|
||||
super(parent);
|
||||
}
|
||||
|
||||
public void generateMain(final World world, final int x, final int y, final int z) {
|
||||
super.generateMain(world, x, y, z);
|
||||
|
||||
ITimedJob job = new ITimedJob() {
|
||||
|
||||
@Override
|
||||
public void work() {
|
||||
|
||||
Block bl = world.getBlock(x + 2, y, z + 2);
|
||||
if(bl == ModBlocks.brick_jungle || bl == ModBlocks.brick_jungle_cracked || bl == ModBlocks.brick_jungle_lava) {
|
||||
world.setBlock(x + 2, y, z + 2, ModBlocks.brick_jungle_trap, Trap.ZOMBIE.ordinal(), 3);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
TimedGenerator.addOp(world, job);
|
||||
}
|
||||
}
|
||||
@ -3,6 +3,7 @@ package com.hbm.world.generator.room;
|
||||
import java.util.ArrayList;
|
||||
|
||||
import com.hbm.blocks.ModBlocks;
|
||||
import com.hbm.inventory.RecipesCommon.MetaBlock;
|
||||
import com.hbm.world.generator.CellularDungeon;
|
||||
import com.hbm.world.generator.CellularDungeonRoom;
|
||||
import com.hbm.world.generator.DungeonToolbox;
|
||||
@ -22,9 +23,16 @@ public class TestDungeonRoom4 extends CellularDungeonRoom {
|
||||
public void generateMain(World world, int x, int y, int z) {
|
||||
|
||||
super.generateMain(world, x, y, z);
|
||||
DungeonToolbox.generateBox(world, x, y + parent.height - 2, z, parent.width, 1, parent.width, new ArrayList() {{ add(Blocks.air); add(Blocks.web); }});
|
||||
DungeonToolbox.generateBox(world, x, y + parent.height - 2, z, parent.width, 1, parent.width, new ArrayList() {{ add(new MetaBlock(Blocks.air)); add(new MetaBlock(Blocks.web)); }});
|
||||
|
||||
DungeonToolbox.generateBox(world, x + 1, y, z + 1, parent.width - 2, 1, parent.width - 2, new ArrayList() {{ add(ModBlocks.meteor_polished); add(ModBlocks.meteor_polished); add(ModBlocks.meteor_polished); add(ModBlocks.meteor_polished); add(ModBlocks.meteor_polished); add(ModBlocks.meteor_spawner); }});
|
||||
DungeonToolbox.generateBox(world, x + 1, y, z + 1, parent.width - 2, 1, parent.width - 2, new ArrayList() {{
|
||||
add(new MetaBlock(ModBlocks.meteor_polished));
|
||||
add(new MetaBlock(ModBlocks.meteor_polished));
|
||||
add(new MetaBlock(ModBlocks.meteor_polished));
|
||||
add(new MetaBlock(ModBlocks.meteor_polished));
|
||||
add(new MetaBlock(ModBlocks.meteor_polished));
|
||||
add(new MetaBlock(ModBlocks.meteor_spawner));
|
||||
}});
|
||||
}
|
||||
|
||||
public void generateWall(World world, int x, int y, int z, ForgeDirection wall, boolean door) {
|
||||
|
||||
@ -3,6 +3,7 @@ package com.hbm.world.generator.room;
|
||||
import java.util.ArrayList;
|
||||
|
||||
import com.hbm.blocks.ModBlocks;
|
||||
import com.hbm.inventory.RecipesCommon.MetaBlock;
|
||||
import com.hbm.world.generator.CellularDungeon;
|
||||
import com.hbm.world.generator.CellularDungeonRoom;
|
||||
import com.hbm.world.generator.DungeonToolbox;
|
||||
@ -20,9 +21,15 @@ public class TestDungeonRoom5 extends CellularDungeonRoom {
|
||||
public void generateMain(World world, int x, int y, int z) {
|
||||
|
||||
super.generateMain(world, x, y, z);
|
||||
DungeonToolbox.generateBox(world, x, y + parent.height - 2, z, parent.width, 1, parent.width, new ArrayList() {{ add(Blocks.air); add(Blocks.web); }});
|
||||
DungeonToolbox.generateBox(world, x, y + parent.height - 2, z, parent.width, 1, parent.width, new ArrayList() {{ add(new MetaBlock(Blocks.air)); add(new MetaBlock(Blocks.web)); }});
|
||||
|
||||
DungeonToolbox.generateBox(world, x + 1, y, z + 1, parent.width - 2, 1, parent.width - 2, new ArrayList() {{ add(ModBlocks.meteor_polished); add(ModBlocks.meteor_polished); add(ModBlocks.meteor_polished); add(ModBlocks.meteor_polished); add(ModBlocks.meteor_polished); add(ModBlocks.meteor_spawner); }});
|
||||
DungeonToolbox.generateBox(world, x + 1, y, z + 1, parent.width - 2, 1, parent.width - 2, new ArrayList() {{
|
||||
add(new MetaBlock(ModBlocks.meteor_polished));
|
||||
add(new MetaBlock(ModBlocks.meteor_polished));
|
||||
add(new MetaBlock(ModBlocks.meteor_polished));
|
||||
add(new MetaBlock(ModBlocks.meteor_polished));
|
||||
add(new MetaBlock(ModBlocks.meteor_polished));
|
||||
add(new MetaBlock(ModBlocks.meteor_spawner)); }});
|
||||
}
|
||||
|
||||
public void generateWall(World world, int x, int y, int z, ForgeDirection wall, boolean door) {
|
||||
|
||||