Esempio n. 1
0
        public TerrainRenderer(World world)
        {
            map         = world.Map;
            terrainInfo = map.Rules.TerrainInfo as DefaultTerrain;
            if (terrainInfo == null)
            {
                throw new InvalidDataException("TerrainRenderer can only be used with the DefaultTerrain parser");
            }

            tileCache = new DefaultTileCache(terrainInfo);
        }
Esempio n. 2
0
    public void SetDefaultPatch(DefaultTerrain type)
    {
        int w = 4;
        int count = 5;//more than enough
        switch (type)
        {
            case DefaultTerrain.hillGrid:
                w = 4;
                for (int x = -count*w; x <= count * w; x += w)
                {
                    for (int z = -count * w; z <= count * w; z += w)
                    {
                        SetHill(x, z);
                    }
                }
                pm.SetPatchOrder(PatchOrder.HLM);

                break;
            case DefaultTerrain.valleys:
                w = 4;
                for (int i = -count * w; i <= count * w; i += w)
                {
                    SetValley(i, 0, w, 10, valleyDir);
                }
                valleyDir = !valleyDir;
                pm.SetPatchOrder(PatchOrder.LHM);
                break;
            case DefaultTerrain.random:
                SetRandomPatchLevel(5);
                pm.SetPatchOrder(PatchOrder.HLM);
                break;

        }
    }