2021-03-09 11:29:46 +01:00
|
|
|
package main
|
2021-02-26 14:29:04 +01:00
|
|
|
|
2021-03-09 11:29:46 +01:00
|
|
|
import (
|
|
|
|
"f00860/kartograph-map-editor/pkg/generator"
|
2021-03-12 12:58:40 +01:00
|
|
|
"flag"
|
2021-03-09 11:29:46 +01:00
|
|
|
"fmt"
|
|
|
|
)
|
|
|
|
|
2021-03-12 12:58:40 +01:00
|
|
|
var (
|
|
|
|
format string
|
|
|
|
|
|
|
|
size int
|
|
|
|
|
|
|
|
wastelands int
|
|
|
|
mountains int
|
|
|
|
ruins int
|
|
|
|
|
|
|
|
filename string
|
|
|
|
)
|
|
|
|
|
2021-03-09 11:29:46 +01:00
|
|
|
func main() {
|
2021-03-12 12:58:40 +01:00
|
|
|
world := generator.New(size, wastelands, mountains, ruins)
|
|
|
|
|
|
|
|
switch format {
|
|
|
|
case "svg":
|
|
|
|
fmt.Print(world.SVG())
|
|
|
|
case "ascii":
|
|
|
|
fmt.Print(world.Plot())
|
|
|
|
case "json":
|
|
|
|
fmt.Print(world.JSON())
|
|
|
|
case "pdf":
|
|
|
|
world.PDF(filename)
|
|
|
|
case "web":
|
|
|
|
panic("Not implemented yet")
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
func init() {
|
|
|
|
flag.StringVar(&format, "format", "svg", "Output format (ascii, json, svg, pdf, web)")
|
|
|
|
|
|
|
|
flag.IntVar(&size, "size", 11, "The size of the map")
|
|
|
|
|
|
|
|
flag.IntVar(&wastelands, "wastelands", 7, "Number of wastelands")
|
|
|
|
flag.IntVar(&mountains, "mountains", 5, "Number of mountains")
|
|
|
|
flag.IntVar(&ruins, "ruins", 6, "Number of ruins")
|
|
|
|
|
|
|
|
flag.StringVar(&filename, "filename", "map.pdf", "The PDF filename")
|
|
|
|
|
|
|
|
flag.Parse()
|
2021-02-26 14:29:04 +01:00
|
|
|
}
|