Exemplo n.º 1
0
        public static StructureComplete GetStructure(string name)
        {
            StructureElement blocks;
            StructureElement walls;
            StructureElement liquids    = StructureElement.emptyElement();
            StructureElement blockPaint = StructureElement.emptyElement();
            StructureElement wallPaint  = StructureElement.emptyElement();

            switch (name)
            {
            case "OlimpusCloud1":

                blocks = new StructureElement(OlimpusCloud.OlimpusCloud1Blocks, OlimpusCloud.olimpusBlockTypes);
                walls  = new StructureElement(OlimpusCloud.OlimpusCloud1Walls, OlimpusCloud.olimpusWallTypes);

                return(new StructureComplete(blocks, OlimpusCloud.OlimpusCloud1Slopes, blockPaint, StructureComplete.emptyActuated(), walls, wallPaint, liquids));

            case "OlimpusCloud2":

                blocks    = new StructureElement(OlimpusCloud.OlimpusCloud2Blocks, OlimpusCloud.olimpusBlockTypes);
                walls     = new StructureElement(OlimpusCloud.OlimpusCloud2Walls, OlimpusCloud.olimpusWallTypes);
                wallPaint = new StructureElement(OlimpusCloud.OlimpusCoud2wallPaint, OlimpusCloud.olimpusPaintTypes);

                return(new StructureComplete(blocks, OlimpusCloud.OlimpusCloud2Slopes, blockPaint, StructureComplete.BoolsFromInts(OlimpusCloud.OlimpusCloud2Actuate), walls, wallPaint, liquids));

            case "OlimpusLake":

                blocks     = new StructureElement(OlimpusCloud.OlimpusLakeBlocks, OlimpusCloud.olimpusBlockTypes);
                walls      = new StructureElement(OlimpusCloud.OlimpusLakeWalls, OlimpusCloud.olimpusWallTypes);
                liquids    = new StructureElement(OlimpusCloud.OlimpusLakeLiquids, OlimpusCloud.olimpusliquidTypes);
                blockPaint = new StructureElement(OlimpusCloud.OlimpusLakePaints, OlimpusCloud.olimpusPaintTypes);

                return(new StructureComplete(blocks, OlimpusCloud.OlimpusLakeSlopes, blockPaint, StructureComplete.BoolsFromInts(OlimpusCloud.OlimpusLakeActuate), walls, wallPaint, liquids, OlimpusCloud.olimpusPlatforms));

            default:
                return(null);
            }
        }
Exemplo n.º 2
0
        public StructureComplete(StructureElement block, int[,] slopes, StructureElement blockCol, bool[,] actuated, StructureElement wall, StructureElement wallCol, StructureElement liquid, int platformtype = 0)
        {
            blocks = block;

            hasSlopes   = slopes.Length > 0;
            blockSlopes = slopes;

            hasBlockPaint = blockCol.element.Length > 0;
            blockColors   = blockCol;

            hasActuatedBlocks = actuated.Length > 0;
            actuatedBlocks    = actuated;

            hasWallPaint = wall.element.Length > 0;
            walls        = wall;

            wallColors = wallCol;

            containsLiquids = liquid.element.Length > 0;
            liquids         = liquid;

            platformsType = platformtype;
        }