Something went wrong. Try again.
A Minecraft datapack generator written in go.
Something went wrong. Try again.
123456789101112131415161718192021222324252627282930313233343536373839404142434445package generator
import ( "os" "path" "path/filepath" "strings")
// todo: transform this to use concurrencyfunc Generate(namespace string, features []Feature, outputDirectory string) error { for _, feature := range features { file, err := feature.Emit() if err != nil { return err }
path := path.Join(outputDirectory, namespace, strings.ReplaceAll(file.Path, "%namespace%",namespace)) if err := writeFile(path, file.Content); err != nil { return err } } return nil}
func writeFile(path string, content []byte) error { if err := os.MkdirAll(filepath.Dir(path), 0o755); err != nil { return err }
file, err := os.Create(path) if err != nil { return err }
defer file.Close()
_, err = file.Write(content) if err != nil { return err }
return nil}