Example #1
0
 private void PlaceSlab(MarbleBiome.Slab slab, int originX, int originY, int scale)
 {
     for (int x = 0; x < scale; ++x)
     {
         for (int y = 0; y < scale; ++y)
         {
             Tile tile = GenBase._tiles[originX + x, originY + y];
             if (TileID.Sets.Ore[(int)tile.type])
             {
                 tile.ResetToType(tile.type);
             }
             else
             {
                 tile.ResetToType((ushort)367);
             }
             bool active = slab.State(x, y, scale);
             tile.active(active);
             if (slab.HasWall)
             {
                 tile.wall = (byte)178;
             }
             WorldUtils.TileFrame(originX + x, originY + y, true);
             WorldGen.SquareWallFrame(originX + x, originY + y, true);
             Tile.SmoothSlope(originX + x, originY + y, true);
             if (WorldGen.SolidTile(originX + x, originY + y - 1) && GenBase._random.Next(4) == 0)
             {
                 WorldGen.PlaceTight(originX + x, originY + y, (ushort)165, false);
             }
             if (WorldGen.SolidTile(originX + x, originY + y) && GenBase._random.Next(4) == 0)
             {
                 WorldGen.PlaceTight(originX + x, originY + y - 1, (ushort)165, false);
             }
         }
     }
 }
Example #2
0
 // Token: 0x06000FAF RID: 4015 RVA: 0x003F7714 File Offset: 0x003F5914
 private void PlaceSlab(MarbleBiome.Slab slab, int originX, int originY, int scale)
 {
     for (int i = 0; i < scale; i++)
     {
         for (int j = 0; j < scale; j++)
         {
             Tile tile = GenBase._tiles[originX + i, originY + j];
             if (TileID.Sets.Ore[(int)tile.type])
             {
                 tile.ResetToType(tile.type);
             }
             else
             {
                 tile.ResetToType(367);
             }
             bool active = slab.State(i, j, scale);
             tile.active(active);
             if (slab.HasWall)
             {
                 tile.wall = 178;
             }
             WorldUtils.TileFrame(originX + i, originY + j, true);
             WorldGen.SquareWallFrame(originX + i, originY + j, true);
             Tile.SmoothSlope(originX + i, originY + j, true);
             if (WorldGen.SolidTile(originX + i, originY + j - 1) && GenBase._random.Next(4) == 0)
             {
                 WorldGen.PlaceTight(originX + i, originY + j, 165, false);
             }
             if (WorldGen.SolidTile(originX + i, originY + j) && GenBase._random.Next(4) == 0)
             {
                 WorldGen.PlaceTight(originX + i, originY + j - 1, 165, false);
             }
         }
     }
 }
Example #3
0
        private void PlaceSlab(MarbleBiome.Slab slab, int originX, int originY, int scale)
        {
            ushort num1 = 367;
            ushort num2 = 178;

            if (WorldGen.drunkWorldGen)
            {
                num1 = (ushort)368;
                num2 = (ushort)180;
            }
            int num3 = -1;
            int num4 = scale + 1;
            int num5 = 0;
            int num6 = scale;

            for (int x = num3; x < num4; ++x)
            {
                if (x != num3 && x != num4 - 1 || WorldGen.genRand.Next(2) != 0)
                {
                    if (WorldGen.genRand.Next(2) == 0)
                    {
                        --num5;
                    }
                    if (WorldGen.genRand.Next(2) == 0)
                    {
                        ++num6;
                    }
                    for (int y = num5; y < num6; ++y)
                    {
                        Tile tile = GenBase._tiles[originX + x, originY + y];
                        tile.ResetToType(TileID.Sets.Ore[(int)tile.type] ? tile.type : num1);
                        bool active = slab.State(x, y, scale);
                        tile.active(active);
                        if (slab.HasWall)
                        {
                            tile.wall = num2;
                        }
                        WorldUtils.TileFrame(originX + x, originY + y, true);
                        WorldGen.SquareWallFrame(originX + x, originY + y, true);
                        Tile.SmoothSlope(originX + x, originY + y, true, false);
                        if (WorldGen.SolidTile(originX + x, originY + y - 1, false) && GenBase._random.Next(4) == 0)
                        {
                            WorldGen.PlaceTight(originX + x, originY + y, false);
                        }
                        if (WorldGen.SolidTile(originX + x, originY + y, false) && GenBase._random.Next(4) == 0)
                        {
                            WorldGen.PlaceTight(originX + x, originY + y - 1, false);
                        }
                    }
                }
            }
        }