#-*-fundamental-*-

# NB If exits is not specified then all possible exits are assumed.

d_tiny = { width=1 height=1 data=[ {type="block" }] }

d_small = { width=2 height=1 data=[ {type="block"} {type="block"} ] }

d_basic = {
    width=2 height=2 data=[
            { type="edge" } { type="edge" }
            { type="edge" } { type="edge" }
    ]
}

d_big = Random(
    {
        width=2 height=3 data=[
            { type="edge"  } { type="edge"  }
            { type="block" } { type="block" }
            { type="edge"  } { type="edge"  }
        ]
    } : 3,
    {
        width=2 height=3 data=[
            { type="edge" } { type="edge"  }
            { type="edge" } { type="block" }
            { type="none" } { type="edge"  }
        ]
    } : 1
)

d_huge = Random(
    {
        width=3 height=3 data=[
            { type="edge"  } { type="block" } { type="edge"  }
            { type="block" } { type="block" } { type="block" }
            { type="edge"  } { type="block" } { type="edge"  }
        ]
    }
    {
        width=3 height=3 data=[
            { type="block" } { type="edge"  } { type="none"  }
            { type="edge"  } { type="block" } { type="block" }
            { type="none"  } { type="block" } { type="edge"  }
        ]
    }
    {
        width=3 height=3 data=[
            { type="edge"  } { type="block" } { type="edge"  }
            { type="block" } { type="block" } { type="block" }
            { type="edge"  } { type="block" } { type="none"  }
        ]
    }
)

d_snake = Random(
    {
        width=3 height=1 data=[ { type="edge" } { type="block" } { type="edge" } ]
    } : 6

    {
        width=3 height=2 data=[
            { type="block" } { type="block" } { type="edge" }
            { type="edge"  } { type="none"  } { type="none" } ]
    } : 1

    {
        width=3 height=3 data=[
            { type="block" } { type="block" } { type="edge" }
            { type="block" } { type="none"  } { type="none" }
            { type="edge"  } { type="none"  } { type="none" } ]
    } : 1

    {
        width=3 height=2 data=[
            { type="edge"  } { type="none"  } { type="edge"  }
            { type="block" } { type="block" } { type="block" }  ]
    } : 1
    {
        width=3 height=3 data=[
            { type="edge"  } { type="none"  } { type="none"  }
            { type="block" } { type="block" } { type="block" }
            { type="none"  } { type="none"  } { type="edge"  }  ]
    } : 1
)

d_long_snake = Random(
    {
        width=2 height=3 data=[
            { type="block" exits="se" } { type="block" exits="sw" }
            { type="block" exits="ns" } { type="block" exits="ns" }
            { type="edge"  exits="n"  } { type="edge"  exits="n"  } ]
    }
    {
        width=3 height=3 data=[
            { type="block" } { type="block" } { type="block" }
            { type="block" } { type="none"  } { type="edge"  }
            { type="edge"  } { type="none"  } { type="none"  } ]
    }
    {
        width=3 height=3 data=[
            { type="block" } { type="block" } { type="block" }
            { type="block" } { type="none"  } { type="block" }
            { type="edge"  } { type="none"  } { type="edge"  }  ]
    }
    {
        width=3 height=3 data=[
            { type="block" } { type="edge"  exits="w"  } { type="none"  }
            { type="block" } { type="block" exits="we" } { type="block" }
            { type="none"  } { type="edge"  exits="e"  } { type="block" } ]
    }
    {
        width=3 height=3 data=[
            { type="edge"  exits="e" } { type="block" } { type="block" }
            { type="edge"  exits="s" } { type="none"  } { type="block" }
            { type="block"           } { type="block" } { type="block" }  ]
    }
)

d_ring = Random(
    {
        width=3 height=3 data=[
            {type="block"           } {type="block"             } {type="block"           }
            {type="block" exits="ns"} {type="special" exits="n" } {type="block" exits="ns"}
            {type="block"           } {type="block"   exits="we"} {type="block"           }  ]
    } : 4
    { 
        width=3 height=3 data=[
            {type="block"           } {type="block" exits="we"} {type="block"  }
            {type="block" exits="ns"} {type="block" exits="es"} {type="block"  }
            {type="block"           } {type="block"           } {type="special"}  ]
    } : 1
    { 
        width=3 height=3 data=[
            {type="block"           } {type="block"           } {type="special"}
            {type="block" exits="ns"} {type="block" exits="ns"} {type="none"   }
            {type="block"           } {type="block"           } {type="none"   } ]
    } : 1
)

