From a8ac17f81b7b56c597e149eef4830e1eea5fce20 Mon Sep 17 00:00:00 2001 From: StevenRS11 Date: Sun, 2 Jun 2013 23:49:47 -0400 Subject: [PATCH] fixed dungeon gen --- .../mod_pocketDim/DungeonGenerator.java | 10 ++- .../mod_pocketDim/SchematicLoader.java | 59 +++++++++--------- .../mod_pocketDim/mod_pocketDim.java | 4 +- .../textures/blocks/blockDimWallPerm.png | Bin 2804 -> 1025 bytes .../textures/blocks/blockDimWallPerm.txt | 1 + 5 files changed, 42 insertions(+), 32 deletions(-) create mode 100644 resources/mods/DimDoors/textures/blocks/blockDimWallPerm.txt diff --git a/StevenDimDoors/mod_pocketDim/DungeonGenerator.java b/StevenDimDoors/mod_pocketDim/DungeonGenerator.java index efb5601..3fac097 100644 --- a/StevenDimDoors/mod_pocketDim/DungeonGenerator.java +++ b/StevenDimDoors/mod_pocketDim/DungeonGenerator.java @@ -182,7 +182,15 @@ public class DungeonGenerator implements Serializable } catch(Exception e) { - dungeon = mod_pocketDim.registeredDungeons.get(rand.nextInt(mod_pocketDim.registeredDungeons.size())); + if(mod_pocketDim.registeredDungeons.size()>0) + { + dungeon = mod_pocketDim.registeredDungeons.get(rand.nextInt(mod_pocketDim.registeredDungeons.size())); + } + else + { + e.printStackTrace(); + return; + } } diff --git a/StevenDimDoors/mod_pocketDim/SchematicLoader.java b/StevenDimDoors/mod_pocketDim/SchematicLoader.java index 494241d..5bd69df 100644 --- a/StevenDimDoors/mod_pocketDim/SchematicLoader.java +++ b/StevenDimDoors/mod_pocketDim/SchematicLoader.java @@ -33,20 +33,25 @@ public class SchematicLoader public short height; public short length; - public short[] blocks; - public byte[] blockData; + public short[] blocks= new short[0]; + public byte[] blockData= new byte[0]; + public byte[] blockId =new byte[0]; + public byte[] addId = new byte[0]; - public byte[] blockId; + public NBTTagList entities; public NBTTagList tileentities; + private Random rand = new Random(); - // public World world; + public Point3D incomingLink= new Point3D(0,0,0); + public ArrayList sideLinks = new ArrayList(); public ArrayList exitLinks = new ArrayList(); + public int transMeta; - // public Chunk chunk; + public int cX; public int cZ; public int cY; @@ -58,7 +63,6 @@ public class SchematicLoader public SchematicLoader() { - // this.schematic="/schematics/"+filePath; } @@ -85,28 +89,25 @@ public class SchematicLoader } //FileInputStream fileinputstream = new FileInputStream(file); NBTTagCompound nbtdata = CompressedStreamTools.readCompressed(input); - - - - width = nbtdata.getShort("Width"); - height = nbtdata.getShort("Height"); - length = nbtdata.getShort("Length"); - - - blockId = nbtdata.getByteArray("Blocks"); - blockData = nbtdata.getByteArray("Data"); + + width = nbtdata.getShort("Width"); + height = nbtdata.getShort("Height"); + length = nbtdata.getShort("Length"); + + blockId = nbtdata.getByteArray("Blocks"); + blockData = nbtdata.getByteArray("Data"); blocks=new short[blockId.length]; - if(nbtdata.getByteArray("AddBlocks")!=null) - { - this.addId = nbtdata.getByteArray("AddBlocks"); - } + addId = nbtdata.getByteArray("AddBlocks"); - entities = nbtdata.getTagList("Entities"); - tileentities = nbtdata.getTagList("TileEntities"); - this.didRead=true; - input.close(); + entities = nbtdata.getTagList("Entities"); + tileentities = nbtdata.getTagList("TileEntities"); + + + + this.didRead=true; + input.close(); for (int index = 0; index < blockId.length; index++) @@ -114,14 +115,14 @@ public class SchematicLoader if ((index >> 1) >= addId.length) { blocks[index] = (short) (blockId[index] & 0xFF); - } - else + } + else { if ((index & 1) == 0) { blocks[index] = (short) (((addId[index >> 1] & 0x0F) << 8) + (blockId[index] & 0xFF)); - - } else + } + else { blocks[index] = (short) (((addId[index >> 1] & 0xF0) << 4) + (blockId[index] & 0xFF)); } @@ -769,7 +770,7 @@ public class SchematicLoader if(Block.blocksList[blockToReplace]==null&&blockToReplace!=0||blockToReplace>158) { - // blockToReplace=mod_pocketDim.blockDimWall.blockID; + blockToReplace=mod_pocketDim.blockDimWall.blockID; } if(blockToReplace>0) diff --git a/StevenDimDoors/mod_pocketDim/mod_pocketDim.java b/StevenDimDoors/mod_pocketDim/mod_pocketDim.java index b62f7e7..053af60 100644 --- a/StevenDimDoors/mod_pocketDim/mod_pocketDim.java +++ b/StevenDimDoors/mod_pocketDim/mod_pocketDim.java @@ -612,7 +612,7 @@ public class mod_pocketDim this.blocksImmuneToRift.add(Block.blockLapis.blockID); this.blocksImmuneToRift.add(Block.bedrock.blockID); - /** + this.hubs.add(new DungeonGenerator(0, "/schematics/4WayBasicHall.schematic", false)); this.hubs.add(new DungeonGenerator(0, "/schematics/4WayBasicHall.schematic", false)); this.hubs.add(new DungeonGenerator(0, "/schematics/doorTotemRuins.schematic", true)); @@ -690,7 +690,7 @@ public class mod_pocketDim this.registeredDungeons.addAll(this.hubs); -**/ + diff --git a/resources/mods/DimDoors/textures/blocks/blockDimWallPerm.png b/resources/mods/DimDoors/textures/blocks/blockDimWallPerm.png index 4967de8d624bf1187116f5bf3393171a9f74e39b..c8f4daf36ce86441836fccda5b072d016a94e9ea 100644 GIT binary patch delta 997 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